annotate lisp/textmodes/texinfmt.el @ 107777:13c077500eb3

2010-04-04 John Wiegley <jwiegley@gmail.com> * ido.el (ido-use-virtual-buffers): New variable to indicate whether "virtual buffer" support is enabled for IDO. Essentially it works as follows: Say you are visiting a file and the buffer gets cleaned up by mignight.el. Later, you want to switch to that buffer, but find it's no longer open. With virtual buffers enabled, the buffer name stays in the buffer list (using the ido-virtual face, and always at the end), and if you select it, it opens the file back up again. This allows you to think less about whether recently opened files are still open or not. Most of the time you can quit Emacs, restart, and then switch to a file buffer that was previously open as if it still were. NOTE: This feature has been present in iswitchb for several years now, and I'm porting the same logic to IDO. (ido-virtual): Face used to indicate virtual buffers in the list. (ido-buffer-internal): If a buffer is chosen, and no such buffer exists, but a virtual buffer of that name does (which would be why it was in the list), recreate the buffer by reopening the file. (ido-make-buffer-list): If virtual buffers are being used, call `ido-add-virtual-buffers-to-list' before the make list hook. (ido-virtual-buffers): New variable which contains a copy of the current contents of the `recentf-list', albeit pared down for the sake of speed, and with proper faces applied. (ido-add-virtual-buffers-to-list): Using the `recentf-list', create a list of "virtual buffers" to present to the user in addition to the currently open set. Note that this logic could get rather slow if that list is too large. With the default `recentf-max-saved-items' of 200, there is little speed penalty.
author jwiegley@gmail.com
date Sun, 04 Apr 2010 02:55:19 -0400
parents 1d1d5d9bd884
children d835100c3e8b 376148b31b5e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
38436
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38044
diff changeset
1 ;;; texinfmt.el --- format Texinfo files into Info files
13337
84acc3adcd63 Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 10896
diff changeset
2
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3 ;; Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993,
64751
5b1a238fcbb4 Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 64084
diff changeset
4 ;; 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003,
106815
1d1d5d9bd884 Add 2010 to copyright years.
Glenn Morris <rgm@gnu.org>
parents: 105372
diff changeset
5 ;; 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
841
2cdce064065f entered into RCS
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 814
diff changeset
6
43808
234792943059 Revert last change.
Andreas Schwab <schwab@suse.de>
parents: 43789
diff changeset
7 ;; Maintainer: Robert J. Chassell <bug-texinfo@gnu.org>
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
8 ;; Keywords: maint, tex, docs
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
9
13337
84acc3adcd63 Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 10896
diff changeset
10 ;; This file is part of GNU Emacs.
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
11
94670
f4a69fedbd46 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 87649
diff changeset
12 ;; GNU Emacs is free software: you can redistribute it and/or modify
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
13 ;; it under the terms of the GNU General Public License as published by
94670
f4a69fedbd46 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 87649
diff changeset
14 ;; the Free Software Foundation, either version 3 of the License, or
f4a69fedbd46 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 87649
diff changeset
15 ;; (at your option) any later version.
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
16
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
17 ;; GNU Emacs is distributed in the hope that it will be useful,
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
20 ;; GNU General Public License for more details.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
21
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
22 ;; You should have received a copy of the GNU General Public License
94670
f4a69fedbd46 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 87649
diff changeset
23 ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
24
38436
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38044
diff changeset
25 ;;; Commentary:
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38044
diff changeset
26
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
27 ;;; Code:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
28
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
29 ;;; Emacs lisp functions to convert Texinfo files to Info files.
807
4f28bd14272c *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 657
diff changeset
30
71781
c780a286814a * textmodes/texinfmt.el: Finally remember to set texinfmt-version
Robert J. Chassell <bob@rattlesnake.com>
parents: 71675
diff changeset
31 (defvar texinfmt-version "2.42 of 7 Jul 2006")
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
32
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
33 (defun texinfmt-version (&optional here)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
34 "Show the version of texinfmt.el in the minibuffer.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
35 If optional argument HERE is non-nil, insert info at point."
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
36 (interactive "P")
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
37 (let ((version-string
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
38 (format "Version of \`texinfmt.el\': %s" texinfmt-version)))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
39 (if here
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
40 (insert version-string)
105372
bd2966850aac Use `called-interactively-p' instead of `interactive-p'.
Juanma Barranquero <lekktu@gmail.com>
parents: 100908
diff changeset
41 (if (called-interactively-p 'interactive)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
42 (message "%s" version-string)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
43 version-string))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
44
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
45
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
46 ;;; Variable definitions
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
47
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
48 (require 'texinfo) ; So `texinfo-footnote-style' is defined.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
49 (require 'texnfo-upd) ; So `texinfo-section-types-regexp' is defined.
807
4f28bd14272c *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 657
diff changeset
50
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
51 (defvar texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
52 (defvar texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
53 (defvar texinfo-cindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
54 (defvar texinfo-pindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
55 (defvar texinfo-tindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
56 (defvar texinfo-kindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
57 (defvar texinfo-last-node)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
58 (defvar texinfo-node-names)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
59 (defvar texinfo-enclosure-list)
9759
ebe611f49450 (texinfo-alias-list): New variable.
Richard M. Stallman <rms@gnu.org>
parents: 9754
diff changeset
60 (defvar texinfo-alias-list)
24314
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
61 (defvar texinfo-fold-nodename-case nil)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
62
4868
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
63 (defvar texinfo-command-start)
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
64 (defvar texinfo-command-end)
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
65 (defvar texinfo-command-name)
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
66 (defvar texinfo-defun-type)
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
67 (defvar texinfo-last-node-pos)
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
68 (defvar texinfo-stack)
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
69 (defvar texinfo-short-index-cmds-alist)
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
70 (defvar texinfo-short-index-format-cmds-alist)
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
71 (defvar texinfo-format-filename)
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
72 (defvar texinfo-footnote-number)
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
73
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
74 (defvar texinfo-raisesections-alist
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
75 '((@chapter . @chapter) ; Cannot go higher
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
76 (@unnumbered . @unnumbered)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
77 (@centerchap . @unnumbered)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
78
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
79 (@majorheading . @majorheading)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
80 (@chapheading . @chapheading)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
81 (@appendix . @appendix)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
82
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
83 (@section . @chapter)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
84 (@unnumberedsec . @unnumbered)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
85 (@heading . @chapheading)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
86 (@appendixsec . @appendix)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
87
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
88 (@subsection . @section)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
89 (@unnumberedsubsec . @unnumberedsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
90 (@subheading . @heading)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
91 (@appendixsubsec . @appendixsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
92
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
93 (@subsubsection . @subsection)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
94 (@unnumberedsubsubsec . @unnumberedsubsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
95 (@subsubheading . @subheading)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
96 (@appendixsubsubsec . @appendixsubsec))
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
97 "*An alist of next higher levels for chapters, sections, etc...
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
98 For example, section to chapter, subsection to section.
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
99 Used by `texinfo-raise-lower-sections'.
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
100 The keys specify types of section; the values correspond to the next
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
101 higher types.")
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
102
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
103 (defvar texinfo-lowersections-alist
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
104 '((@chapter . @section)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
105 (@unnumbered . @unnumberedsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
106 (@centerchap . @unnumberedsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
107 (@majorheading . @heading)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
108 (@chapheading . @heading)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
109 (@appendix . @appendixsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
110
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
111 (@section . @subsection)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
112 (@unnumberedsec . @unnumberedsubsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
113 (@heading . @subheading)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
114 (@appendixsec . @appendixsubsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
115
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
116 (@subsection . @subsubsection)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
117 (@unnumberedsubsec . @unnumberedsubsubsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
118 (@subheading . @subsubheading)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
119 (@appendixsubsec . @appendixsubsubsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
120
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
121 (@subsubsection . @subsubsection) ; Cannot go lower.
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
122 (@unnumberedsubsubsec . @unnumberedsubsubsec)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
123 (@subsubheading . @subsubheading)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
124 (@appendixsubsubsec . @appendixsubsubsec))
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
125 "*An alist of next lower levels for chapters, sections, etc...
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
126 For example, chapter to section, section to subsection.
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
127 Used by `texinfo-raise-lower-sections'.
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
128 The keys specify types of section; the values correspond to the next
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
129 lower types.")
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
130
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
131 ;;; Syntax table
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
132
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
133 (defvar texinfo-format-syntax-table
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
134 (let ((st (make-syntax-table)))
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
135 (modify-syntax-entry ?\" " " st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
136 (modify-syntax-entry ?\\ " " st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
137 (modify-syntax-entry ?@ "\\" st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
138 (modify-syntax-entry ?\^q "\\" st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
139 (modify-syntax-entry ?\[ "." st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
140 (modify-syntax-entry ?\] "." st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
141 (modify-syntax-entry ?\( "." st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
142 (modify-syntax-entry ?\) "." st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
143 (modify-syntax-entry ?{ "(}" st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
144 (modify-syntax-entry ?} "){" st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
145 (modify-syntax-entry ?\' "." st)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
146 st))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
147
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
148
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
149 ;;; Top level buffer and region formatting functions
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
150
4769
d1b5ca8f5493 (texinfo-format-region texinfo-format-buffer): Add ###autoload cookies.
Brian Fox <bfox@gnu.org>
parents: 4396
diff changeset
151 ;;;###autoload
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
152 (defun texinfo-format-buffer (&optional nosplit)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
153 "Process the current buffer as texinfo code, into an Info file.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
154 The Info file output is generated in a buffer visiting the Info file
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
155 name specified in the @setfilename command.
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
156
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
157 Non-nil argument (prefix, if interactive) means don't make tag table
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
158 and don't split the file if large. You can use `Info-tagify' and
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
159 `Info-split' to do these manually."
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
160 (interactive "P")
24621
54ef2ebc8494 (texinfo-format-buffer): Bind coding-system-for-write, to avoid hanging when
Karl Heuer <kwzh@gnu.org>
parents: 24453
diff changeset
161 (let ((lastmessage "Formatting Info file...")
54ef2ebc8494 (texinfo-format-buffer): Bind coding-system-for-write, to avoid hanging when
Karl Heuer <kwzh@gnu.org>
parents: 24453
diff changeset
162 (coding-system-for-write buffer-file-coding-system))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
163 (message lastmessage)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
164 (widen)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
165 (texinfo-format-buffer-1)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
166 (Info-tagify)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
167 (if nosplit
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
168 nil
98359
d4ebb53e6be1 * informat.el (Info-split-threshold): New variable.
Katsumi Yamaoka <yamaoka@jpl.org>
parents: 97142
diff changeset
169 (if (> (buffer-size) (+ 50000 Info-split-threshold))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
170 (progn
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
171 (message (setq lastmessage "Splitting Info file..."))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
172 (Info-split))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
173 (message (concat lastmessage
105372
bd2966850aac Use `called-interactively-p' instead of `interactive-p'.
Juanma Barranquero <lekktu@gmail.com>
parents: 100908
diff changeset
174 (if (called-interactively-p 'interactive)
bd2966850aac Use `called-interactively-p' instead of `interactive-p'.
Juanma Barranquero <lekktu@gmail.com>
parents: 100908
diff changeset
175 "done. Now save it." "done.")))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
176
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
177 (defvar texinfo-region-buffer-name "*Info Region*"
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
178 "*Name of the temporary buffer used by \\[texinfo-format-region].")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
179
52969
d60ea4b622fe (texinfo-pre-format-hook): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 52401
diff changeset
180 (defvar texinfo-pre-format-hook nil
d60ea4b622fe (texinfo-pre-format-hook): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 52401
diff changeset
181 "Hook called before the conversion of the Texinfo file to Info format.
d60ea4b622fe (texinfo-pre-format-hook): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 52401
diff changeset
182 The functions on this hook are called with argument BUFFER, the buffer
d60ea4b622fe (texinfo-pre-format-hook): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 52401
diff changeset
183 containing the Texinfo file.")
d60ea4b622fe (texinfo-pre-format-hook): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 52401
diff changeset
184
48932
faafd2631b67 (tex-start-of-header, tex-end-of-header): Add defvars.
Richard M. Stallman <rms@gnu.org>
parents: 48794
diff changeset
185 ;; These come from tex-mode.el.
faafd2631b67 (tex-start-of-header, tex-end-of-header): Add defvars.
Richard M. Stallman <rms@gnu.org>
parents: 48794
diff changeset
186 (defvar tex-start-of-header)
faafd2631b67 (tex-start-of-header, tex-end-of-header): Add defvars.
Richard M. Stallman <rms@gnu.org>
parents: 48794
diff changeset
187 (defvar tex-end-of-header)
faafd2631b67 (tex-start-of-header, tex-end-of-header): Add defvars.
Richard M. Stallman <rms@gnu.org>
parents: 48794
diff changeset
188
4769
d1b5ca8f5493 (texinfo-format-region texinfo-format-buffer): Add ###autoload cookies.
Brian Fox <bfox@gnu.org>
parents: 4396
diff changeset
189 ;;;###autoload
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
190 (defun texinfo-format-region (region-beginning region-end)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
191 "Convert the current region of the Texinfo file to Info format.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
192 This lets you see what that part of the file will look like in Info.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
193 The command is bound to \\[texinfo-format-region]. The text that is
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
194 converted to Info is stored in a temporary buffer."
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
195 (interactive "r")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
196 (message "Converting region to Info format...")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
197 (let (texinfo-command-start
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
198 texinfo-command-end
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
199 texinfo-command-name
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
200 texinfo-vindex
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
201 texinfo-findex
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
202 texinfo-cindex
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
203 texinfo-pindex
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
204 texinfo-tindex
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
205 texinfo-kindex
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
206 texinfo-stack
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
207 (texinfo-format-filename "")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
208 texinfo-example-start
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
209 texinfo-last-node-pos
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
210 texinfo-last-node
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
211 texinfo-node-names
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
212 (texinfo-footnote-number 0)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
213 last-input-buffer
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
214 (fill-column-for-info fill-column)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
215 (input-buffer (current-buffer))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
216 (input-directory default-directory)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
217 (header-text "")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
218 (header-beginning 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
219 (header-end 1))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
220
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
221 ;;; Copy lines between beginning and end of header lines,
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
222 ;;; if any, or else copy the `@setfilename' line, if any.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
223 (save-excursion
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
224 (save-restriction
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
225 (widen)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
226 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
227 (let ((search-end (save-excursion (forward-line 100) (point))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
228 (if (or
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
229 ;; Either copy header text.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
230 (and
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
231 (prog1
4982
36b78ccd6285 (texinfo-format-region): Change `texinfo-[start
Richard M. Stallman <rms@gnu.org>
parents: 4868
diff changeset
232 (search-forward tex-start-of-header search-end t)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
233 (forward-line 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
234 ;; Mark beginning of header.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
235 (setq header-beginning (point)))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
236 (prog1
4982
36b78ccd6285 (texinfo-format-region): Change `texinfo-[start
Richard M. Stallman <rms@gnu.org>
parents: 4868
diff changeset
237 (search-forward tex-end-of-header nil t)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
238 (beginning-of-line)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
239 ;; Mark end of header
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
240 (setq header-end (point))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
241 ;; Or copy @filename line.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
242 (prog2
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
243 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
244 (search-forward "@setfilename" search-end t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
245 (beginning-of-line)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
246 (setq header-beginning (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
247 (forward-line 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
248 (setq header-end (point))))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
249
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
250 ;; Copy header
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
251 (setq header-text
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
252 (buffer-substring-no-properties
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
253 (min header-beginning region-beginning)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
254 header-end))))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
255
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
256 ;;; Find a buffer to use.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
257 (switch-to-buffer (get-buffer-create texinfo-region-buffer-name))
67582
cc04cc5f78a8 (texinfo-format-region):
Robert J. Chassell <bob@rattlesnake.com>
parents: 64751
diff changeset
258 (setq buffer-read-only t)
cc04cc5f78a8 (texinfo-format-region):
Robert J. Chassell <bob@rattlesnake.com>
parents: 64751
diff changeset
259 (let ((inhibit-read-only t))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
260 (erase-buffer)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
261 ;; Insert the header into the buffer.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
262 (insert header-text)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
263 ;; Insert the region into the buffer.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
264 (insert-buffer-substring
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
265 input-buffer
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
266 (max region-beginning header-end)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
267 region-end)
52969
d60ea4b622fe (texinfo-pre-format-hook): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 52401
diff changeset
268 (run-hook-with-args 'texinfo-pre-format-hook input-buffer)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
269 ;; Make sure region ends in a newline.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
270 (or (= (preceding-char) ?\n)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
271 (insert "\n"))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
272
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
273 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
274 (texinfo-mode)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
275 (message "Converting region to Info format...")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
276 (setq fill-column fill-column-for-info)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
277 ;; Install a syntax table useful for scanning command operands.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
278 (set-syntax-table texinfo-format-syntax-table)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
279
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
280 ;; Insert @include files so `texinfo-raise-lower-sections' can
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
281 ;; work on them without losing track of multiple
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
282 ;; @raise/@lowersections commands.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
283 (while (re-search-forward "^@include" nil t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
284 (setq texinfo-command-end (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
285 (let ((filename (concat input-directory
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
286 (texinfo-parse-line-arg))))
9178
0facf5c89fff (texinfo-format-region, texinfo-format-buffer-1):
Richard M. Stallman <rms@gnu.org>
parents: 6309
diff changeset
287 (re-search-backward "^@include")
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
288 (delete-region (point) (save-excursion (forward-line 1) (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
289 (message "Reading included file: %s" filename)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
290 (save-excursion
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
291 (save-restriction
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
292 (narrow-to-region
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
293 (point)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
294 (+ (point) (car (cdr (insert-file-contents filename)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
295 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
296 ;; Remove `@setfilename' line from included file, if any,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
297 ;; so @setfilename command not duplicated.
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
298 (if (re-search-forward "^@setfilename" (line-end-position 100) t)
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
299 (delete-region (line-beginning-position 1)
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
300 (line-beginning-position 2)))))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
301
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
302 ;; Raise or lower level of each section, if necessary.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
303 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
304 (texinfo-raise-lower-sections)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
305 ;; Append @refill to appropriate paragraphs for filling.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
306 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
307 (texinfo-append-refill)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
308 ;; If the region includes the effective end of the data,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
309 ;; discard everything after that.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
310 (goto-char (point-max))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
311 (if (re-search-backward "^@bye" nil t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
312 (delete-region (point) (point-max)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
313 ;; Make sure buffer ends in a newline.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
314 (or (= (preceding-char) ?\n)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
315 (insert "\n"))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
316 ;; Don't use a previous value of texinfo-enclosure-list.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
317 (setq texinfo-enclosure-list nil)
9759
ebe611f49450 (texinfo-alias-list): New variable.
Richard M. Stallman <rms@gnu.org>
parents: 9754
diff changeset
318 (setq texinfo-alias-list nil)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
319
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
320 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
321 (if (looking-at "\\\\input[ \t]+texinfo")
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
322 (delete-region (point) (line-beginning-position 2)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
323
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
324 ;; Insert Info region title text.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
325 (goto-char (point-min))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
326 (if (search-forward
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
327 "@setfilename" (save-excursion (forward-line 100) (point)) t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
328 (progn
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
329 (setq texinfo-command-end (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
330 (beginning-of-line)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
331 (setq texinfo-command-start (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
332 (let ((arg (texinfo-parse-arg-discard)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
333 (insert " "
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
334 texinfo-region-buffer-name
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
335 " buffer for: `")
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
336 (insert (file-name-nondirectory (expand-file-name arg)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
337 (insert "', -*-Text-*-\n")))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
338 ;; Else no `@setfilename' line
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
339 (insert " "
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
340 texinfo-region-buffer-name
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
341 " buffer -*-Text-*-\n"))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
342 (insert "produced by `texinfo-format-region'\n"
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
343 "from a region in: "
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
344 (if (buffer-file-name input-buffer)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
345 (concat "`"
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
346 (file-name-sans-versions
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
347 (file-name-nondirectory
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
348 (buffer-file-name input-buffer)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
349 "'")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
350 (concat "buffer `" (buffer-name input-buffer) "'"))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
351 "\nusing `texinfmt.el' version "
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
352 texinfmt-version
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
353 ".\n\n")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
354
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
355 ;; Now convert for real.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
356 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
357 (texinfo-format-scan)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
358 (goto-char (point-min))
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
359 (Info-tagify input-buffer)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
360 (goto-char (point-min))
67582
cc04cc5f78a8 (texinfo-format-region):
Robert J. Chassell <bob@rattlesnake.com>
parents: 64751
diff changeset
361 (message "Done."))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
362
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
363 ;;;###autoload
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
364 (defun texi2info (&optional nosplit)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
365 "Convert the current buffer (written in Texinfo code) into an Info file.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
366 The Info file output is generated in a buffer visiting the Info file
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
367 names specified in the @setfilename command.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
368
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
369 This function automatically updates all node pointers and menus, and
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
370 creates a master menu. This work is done on a temporary buffer that
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
371 is automatically removed when the Info file is created. The original
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
372 Texinfo source buffer is not changed.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
373
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
374 Non-nil argument (prefix, if interactive) means don't split the file
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
375 if large. You can use `Info-split' to do this manually."
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
376 (interactive "P")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
377 (let ((temp-buffer (concat "*--" (buffer-name) "--temporary-buffer*" )))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
378 (message "First updating nodes and menus, then creating Info file.")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
379 ;; (sit-for 2)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
380 (copy-to-buffer temp-buffer (point-min) (point-max))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
381 (switch-to-buffer temp-buffer)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
382 (texinfo-master-menu t)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
383 (message "Now creating Info file.")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
384 (sit-for 2)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
385 (texinfo-format-buffer nosplit)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
386 (save-buffer)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
387 (kill-buffer temp-buffer)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
388
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
389
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
390 ;;; Primary internal formatting function for the whole buffer.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
391
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
392 (defun texinfo-format-buffer-1 ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
393 (let (texinfo-format-filename
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
394 texinfo-example-start
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
395 texinfo-command-start
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
396 texinfo-command-end
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
397 texinfo-command-name
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
398 texinfo-last-node
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
399 texinfo-last-node-pos
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
400 texinfo-vindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
401 texinfo-findex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
402 texinfo-cindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
403 texinfo-pindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
404 texinfo-tindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
405 texinfo-kindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
406 texinfo-stack
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
407 texinfo-node-names
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
408 (texinfo-footnote-number 0)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
409 last-input-buffer
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
410 outfile
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
411 (fill-column-for-info fill-column)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
412 (input-buffer (current-buffer))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
413 (input-directory default-directory))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
414 (setq texinfo-enclosure-list nil)
9759
ebe611f49450 (texinfo-alias-list): New variable.
Richard M. Stallman <rms@gnu.org>
parents: 9754
diff changeset
415 (setq texinfo-alias-list nil)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
416 (save-excursion
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
417 (goto-char (point-min))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
418 (or (search-forward "@setfilename" nil t)
38436
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38044
diff changeset
419 (error "Texinfo file needs an `@setfilename FILENAME' line"))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
420 (setq texinfo-command-end (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
421 (setq outfile (texinfo-parse-line-arg)))
18818
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
422
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
423 (find-file outfile)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
424 (texinfo-mode)
18818
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
425 (erase-buffer)
59115
fb586fbcd93c (texinfo-format-buffer-1): Call buffer-disable-undo.
Richard M. Stallman <rms@gnu.org>
parents: 55770
diff changeset
426 (buffer-disable-undo)
18818
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
427
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
428 (message "Formatting Info file: %s" outfile)
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
429 (setq texinfo-format-filename
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
430 (file-name-nondirectory (expand-file-name outfile)))
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
431
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
432 (setq fill-column fill-column-for-info)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
433 (set-syntax-table texinfo-format-syntax-table)
18818
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
434
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
435 (insert-buffer-substring input-buffer)
52969
d60ea4b622fe (texinfo-pre-format-hook): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 52401
diff changeset
436 (run-hook-with-args 'texinfo-pre-format-hook input-buffer)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
437 (message "Converting %s to Info format..." (buffer-name input-buffer))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
438
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
439 ;; Insert @include files so `texinfo-raise-lower-sections' can
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
440 ;; work on them without losing track of multiple
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
441 ;; @raise/@lowersections commands.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
442 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
443 (while (re-search-forward "^@include" nil t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
444 (setq texinfo-command-end (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
445 (let ((filename (concat input-directory
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
446 (texinfo-parse-line-arg))))
9178
0facf5c89fff (texinfo-format-region, texinfo-format-buffer-1):
Richard M. Stallman <rms@gnu.org>
parents: 6309
diff changeset
447 (re-search-backward "^@include")
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
448 (delete-region (point) (line-beginning-position 2))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
449 (message "Reading included file: %s" filename)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
450 (save-excursion
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
451 (save-restriction
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
452 (narrow-to-region
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
453 (point)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
454 (+ (point) (car (cdr (insert-file-contents filename)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
455 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
456 ;; Remove `@setfilename' line from included file, if any,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
457 ;; so @setfilename command not duplicated.
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
458 (if (re-search-forward "^@setfilename" (line-end-position 100) t)
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
459 (delete-region (line-beginning-position 1)
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
460 (line-beginning-position 2)))))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
461 ;; Raise or lower level of each section, if necessary.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
462 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
463 (texinfo-raise-lower-sections)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
464 ;; Append @refill to appropriate paragraphs
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
465 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
466 (texinfo-append-refill)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
467 (goto-char (point-min))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
468 (search-forward "@setfilename")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
469 (beginning-of-line)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
470 (delete-region (point-min) (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
471 ;; Remove @bye at end of file, if it is there.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
472 (goto-char (point-max))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
473 (if (search-backward "@bye" nil t)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
474 (delete-region (point) (point-max)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
475 ;; Make sure buffer ends in a newline.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
476 (or (= (preceding-char) ?\n)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
477 (insert "\n"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
478 ;; Scan the whole buffer, converting to Info format.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
479 (texinfo-format-scan)
18818
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
480 (goto-char (point-min))
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
481 ;; Insert info about how this file was made.
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
482 (insert "Info file: "
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
483 texinfo-format-filename ", -*-Text-*-\n"
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
484 "produced by `texinfo-format-buffer'\n"
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
485 ;; Date string removed so that regression testing is easier.
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
486 ;; "on "
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
487 ;; (insert (format-time-string "%e %b %Y")) " "
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
488 "from file"
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
489 (if (buffer-file-name input-buffer)
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
490 (concat " `"
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
491 (file-name-sans-versions
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
492 (file-name-nondirectory
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
493 (buffer-file-name input-buffer)))
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
494 "'")
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
495 (concat "buffer `" (buffer-name input-buffer) "'"))
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
496 "\nusing `texinfmt.el' version "
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
497 texinfmt-version
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
498 ".\n\n")
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
499 ;; Return data for indices.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
500 (list outfile
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
501 texinfo-vindex texinfo-findex texinfo-cindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
502 texinfo-pindex texinfo-tindex texinfo-kindex)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
503
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
504
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
505 ;;; Perform non-@-command file conversions: quotes and hyphens
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
506
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
507 (defun texinfo-format-convert (min max)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
508 ;; Convert left and right quotes to typewriter font quotes.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
509 (goto-char min)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
510 (while (search-forward "``" max t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
511 (replace-match "\""))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
512 (goto-char min)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
513 (while (search-forward "''" max t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
514 (replace-match "\""))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
515 ;; Convert three hyphens in a row to two.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
516 (goto-char min)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
517 (while (re-search-forward "\\( \\|\\w\\)\\(---\\)\\( \\|\\w\\)" max t)
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
518 (delete-region (1+ (match-beginning 2)) (+ 2 (match-beginning 2)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
519
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
520
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
521 ;;; Handle paragraph filling
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
522
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
523 ;; Keep as concatinated lists for ease of maintenance
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
524
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
525 (defvar texinfo-no-refill-regexp
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
526 (concat
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
527 "^@"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
528 "\\("
48519
ba7e7cf495b0 (texinfo-no-refill-regexp): add "itemize\\|" because of a problem with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48518
diff changeset
529 ;; add "itemize\\|" (from experiment of 2001 Nov 28)
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
530 ;; because of a problem with @end itemize@refill
48519
ba7e7cf495b0 (texinfo-no-refill-regexp): add "itemize\\|" because of a problem with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48518
diff changeset
531 ;; I don't know if this causes other problems.
ba7e7cf495b0 (texinfo-no-refill-regexp): add "itemize\\|" because of a problem with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48518
diff changeset
532 ;; I suspect itemized lists don't get filled properly and a
ba7e7cf495b0 (texinfo-no-refill-regexp): add "itemize\\|" because of a problem with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48518
diff changeset
533 ;; more precise fix is required. Bob
60309
7621f2acbeb0 (texinfo-no-refill-regexp): commented out inclusion of "itemize\\|",
Robert J. Chassell <bob@rattlesnake.com>
parents: 59115
diff changeset
534 ;; commented out on 2005 Feb 28 by Bob
7621f2acbeb0 (texinfo-no-refill-regexp): commented out inclusion of "itemize\\|",
Robert J. Chassell <bob@rattlesnake.com>
parents: 59115
diff changeset
535 ;; "itemize\\|"
18884
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
536 "direntry\\|"
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
537 "lisp\\|"
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
538 "smalllisp\\|"
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
539 "example\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
540 "smallexample\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
541 "display\\|"
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
542 "smalldisplay\\|"
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
543 "format\\|"
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
544 "smallformat\\|"
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
545 "flushleft\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
546 "flushright\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
547 "menu\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
548 "multitable\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
549 "titlepage\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
550 "iftex\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
551 "ifhtml\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
552 "tex\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
553 "html"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
554 "\\)")
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
555 "Regexp specifying environments in which paragraphs are not filled.")
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
556
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
557 (defvar texinfo-accent-commands
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
558 (concat
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
559 "@^\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
560 "@`\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
561 "@'\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
562 "@\"\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
563 "@,\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
564 "@=\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
565 "@~\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
566 "@OE{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
567 "@oe{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
568 "@AA{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
569 "@aa{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
570 "@AE{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
571 "@ae{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
572 "@ss{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
573 "@questiondown{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
574 "@exclamdown{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
575 "@L{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
576 "@l{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
577 "@O{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
578 "@o{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
579 "@dotaccent{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
580 "@ubaraccent{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
581 "@d{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
582 "@H{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
583 "@ringaccent{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
584 "@tieaccent{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
585 "@u{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
586 "@v{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
587 "@dotless{"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
588 ))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
589
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
590 (defvar texinfo-part-of-para-regexp
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
591 (concat
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
592 "^@"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
593 "\\("
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
594 "b{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
595 "bullet{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
596 "cite{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
597 "code{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
598 "email{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
599 "emph{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
600 "equiv{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
601 "error{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
602 "expansion{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
603 "file{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
604 "i{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
605 "inforef{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
606 "kbd{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
607 "key{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
608 "lisp{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
609 "minus{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
610 "point{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
611 "print{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
612 "pxref{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
613 "r{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
614 "ref{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
615 "result{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
616 "samp{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
617 "sc{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
618 "t{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
619 "TeX{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
620 "today{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
621 "url{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
622 "var{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
623 "w{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
624 "xref{\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
625 "@-\\|" ; @- is a descretionary hyphen (not an accent) (a noop).
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
626 texinfo-accent-commands
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
627 "\\)"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
628 )
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
629 "Regexp specifying @-commands found within paragraphs.")
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
630
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
631 (defun texinfo-append-refill ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
632 "Append @refill at end of each paragraph that should be filled.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
633 Do not append @refill to paragraphs within @example and similar environments.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
634 Do not append @refill to paragraphs containing @w{TEXT} or @*."
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
635
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
636 ;; It is necessary to append @refill before other processing because
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
637 ;; the other processing removes information that tells Texinfo
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
638 ;; whether the text should or should not be filled.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
639
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
640 (while (< (point) (point-max))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
641 (let ((refill-blank-lines "^[ \t\n]*$")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
642 (case-fold-search nil)) ; Don't confuse @TeX and @tex....
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
643 (beginning-of-line)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
644 ;; 1. Skip over blank lines;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
645 ;; skip over lines beginning with @-commands,
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
646 ;; but do not skip over lines
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
647 ;; that are no-refill environments such as @example or
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
648 ;; that begin with within-paragraph @-commands such as @code.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
649 (while (and (looking-at (concat "^@\\|^\\\\\\|" refill-blank-lines))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
650 (not (looking-at
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
651 (concat
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
652 "\\("
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
653 texinfo-no-refill-regexp
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
654 "\\|"
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
655 texinfo-part-of-para-regexp
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
656 "\\)")))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
657 (< (point) (point-max)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
658 (forward-line 1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
659 ;; 2. Skip over @example and similar no-refill environments.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
660 (if (looking-at texinfo-no-refill-regexp)
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
661 (let ((environment (match-string-no-properties 1)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
662 (progn (re-search-forward (concat "^@end " environment) nil t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
663 (forward-line 1)))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
664 ;; Else
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
665 ;; 3. Do not refill a paragraph containing @w or @*, or ending
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
666 ;; with @<newline> followed by a newline.
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
667 (if (or (>= (point) (point-max))
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
668 (re-search-forward
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
669 "@w{\\|@\\*\\|@\n\n"
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
670 (save-excursion (forward-paragraph) (forward-line 1) (point))
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
671 t))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
672 ;; Go to end of paragraph and do nothing.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
673 (forward-paragraph)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
674 ;; 4. Else go to end of paragraph and insert @refill
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
675 (forward-paragraph)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
676 (forward-line -1)
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
677 (let ((line-beg (point)))
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
678 (end-of-line)
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
679 (delete-region
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
680 (point)
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
681 (save-excursion (skip-chars-backward " \t") (point)))
24453
3b8991c22dcd (texinfo-append-refill): Check @c correctly.
Kenichi Handa <handa@m17n.org>
parents: 24314
diff changeset
682 (forward-char 1)
3b8991c22dcd (texinfo-append-refill): Check @c correctly.
Kenichi Handa <handa@m17n.org>
parents: 24314
diff changeset
683 (unless (re-search-backward "@c[ \t\n]\\|@comment[ \t\n]" line-beg t)
3b8991c22dcd (texinfo-append-refill): Check @c correctly.
Kenichi Handa <handa@m17n.org>
parents: 24314
diff changeset
684 (forward-char -1))
60372
f46823f3408c (texinfo-append-refill): Redefine the types of line to which @refill
Robert J. Chassell <bob@rattlesnake.com>
parents: 60327
diff changeset
685 (unless (re-search-backward "@refill\\|^[ \t]*@" line-beg t)
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
686 (insert "@refill")))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
687 (forward-line 1))))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
688
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
689
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
690 ;;; Handle `@raisesections' and `@lowersections' commands
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
691
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
692 ;; These commands change the hierarchical level of chapter structuring
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
693 ;; commands.
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
694 ;;
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
695 ;; @raisesections changes @subsection to @section,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
696 ;; @section to @chapter,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
697 ;; etc.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
698 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
699 ;; @lowersections changes @chapter to @section
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
700 ;; @subsection to @subsubsection,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
701 ;; etc.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
702 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
703 ;; An @raisesections/@lowersections command changes only those
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
704 ;; structuring commands that follow the @raisesections/@lowersections
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
705 ;; command.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
706 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
707 ;; Repeated @raisesections/@lowersections continue to raise or lower
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
708 ;; the heading level.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
709 ;;
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
710 ;; An @lowersections command cancels an @raisesections command, and
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
711 ;; vice versa.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
712 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
713 ;; You cannot raise or lower "beyond" chapters or subsubsections, but
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
714 ;; trying to do so does not elicit an error---you just get more
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
715 ;; headings that mean the same thing as you keep raising or lowering
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
716 ;; (for example, after a single @raisesections, both @chapter and
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
717 ;; @section produce chapter headings).
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
718
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
719 (defun texinfo-raise-lower-sections ()
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
720 "Raise or lower the hierarchical level of chapters, sections, etc.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
721
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
722 This function acts according to `@raisesections' and `@lowersections'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
723 commands in the Texinfo file.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
724
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
725 For example, an `@lowersections' command is useful if you wish to
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
726 include what is written as an outer or standalone Texinfo file in
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
727 another Texinfo file as an inner, included file. The `@lowersections'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
728 command changes chapters to sections, sections to subsections and so
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
729 on.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
730
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
731 @raisesections changes @subsection to @section,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
732 @section to @chapter,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
733 @heading to @chapheading,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
734 etc.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
735
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
736 @lowersections changes @chapter to @section,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
737 @subsection to @subsubsection,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
738 @heading to @subheading,
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
739 etc.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
740
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
741 An `@raisesections' or `@lowersections' command changes only those
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
742 structuring commands that follow the `@raisesections' or
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
743 `@lowersections' command.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
744
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
745 An `@lowersections' command cancels an `@raisesections' command, and
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
746 vice versa.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
747
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
748 Repeated use of the commands continue to raise or lower the hierarchical
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
749 level a step at a time.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
750
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
751 An attempt to raise above `chapters' reproduces chapter commands; an
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
752 attempt to lower below subsubsections reproduces subsubsection
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
753 commands."
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
754
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
755 ;; `texinfo-section-types-regexp' is defined in `texnfo-upd.el';
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
756 ;; it is a regexp matching chapter, section, other headings
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
757 ;; (but not the top node).
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
758
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
759 (let (type (level 0))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
760 (while
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
761 (re-search-forward
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
762 (concat
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
763 "\\(\\(^@\\(raise\\|lower\\)sections\\)\\|\\("
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
764 texinfo-section-types-regexp
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
765 "\\)\\)")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
766 nil t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
767 (beginning-of-line)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
768 (save-excursion (setq type (read (current-buffer))))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
769 (cond
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
770
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
771 ;; 1. Increment level
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
772 ((eq type '@raisesections)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
773 (setq level (1+ level))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
774 (delete-region
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
775 (point) (save-excursion (forward-line 1) (point))))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
776
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
777 ;; 2. Decrement level
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
778 ((eq type '@lowersections)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
779 (setq level (1- level))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
780 (delete-region
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
781 (point) (save-excursion (forward-line 1) (point))))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
782
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
783 ;; Now handle structuring commands
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
784 ((cond
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
785
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
786 ;; 3. Raise level when positive
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
787 ((> level 0)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
788 (let ((count level)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
789 (new-level type))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
790 (while (> count 0)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
791 (setq new-level
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
792 (cdr (assq new-level texinfo-raisesections-alist)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
793 (setq count (1- count)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
794 (kill-word 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
795 (insert (symbol-name new-level))))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
796
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
797 ;; 4. Do nothing except move point when level is zero
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
798 ((= level 0) (forward-line 1))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
799
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
800 ;; 5. Lower level when positive
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
801 ((< level 0)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
802 (let ((count level)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
803 (new-level type))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
804 (while (< count 0)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
805 (setq new-level
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
806 (cdr (assq new-level texinfo-lowersections-alist)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
807 (setq count (1+ count)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
808 (kill-word 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
809 (insert (symbol-name new-level))))))))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
810
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
811 ;;; Perform those texinfo-to-info conversions that apply to the whole input
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
812 ;;; uniformly.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
813
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
814 (defun texinfo-format-scan ()
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
815 (texinfo-format-convert (point-min) (point-max))
48697
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
816 ;; Search for @copying, which has to be first since the
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
817 ;; @insertcopying command then inserts the text elsewhere.
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
818 (goto-char (point-min))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
819 (when (search-forward "@copying" nil t)
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
820 (texinfo-copying))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
821 (while (search-forward "@insertcopying" nil t)
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
822 (delete-region (match-beginning 0) (match-end 0))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
823
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
824 (texinfo-insertcopying))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
825 ;; Scan for other @-commands.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
826 (goto-char (point-min))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
827 (while (search-forward "@" nil t)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
828 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
829 ;; These are the single-character accent commands: @^ @` @' @" @= @~
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
830 ;; In Info, they are simply quoted and the @ deleted.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
831 ;; Other single-character commands:
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
832 ;; @* forces a line break,
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
833 ;; @- is a discretionary hyphenation point; does nothing in Info.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
834 ;; @<space>, @<tab>, @<newline> each produce a single space,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
835 ;; unless followed by a newline.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
836 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
837 ;; Old version 2.34 expression: (looking-at "[@{}^'` *\"?!]")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
838 (if (looking-at "[@{}^'`\"=~ \t\n*?!-]")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
839 ;; @*, causes a line break.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
840 (cond
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
841 ;; @*, a line break
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
842 ((= (following-char) ?*)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
843 ;; remove command
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
844 (delete-region (1- (point)) (1+ (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
845 ;; insert return if not at end of line;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
846 ;; else line is already broken.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
847 (if (not (= (following-char) ?\n))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
848 (insert ?\n)))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
849 ;; @-, deleted
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
850 ((= (following-char) ?-)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
851 (delete-region (1- (point)) (1+ (point))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
852 ;; @<space>, @<tab>, @<newline>: produce a single space,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
853 ;; unless followed by a newline.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
854 ((= (following-char) ? )
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
855 (delete-region (1- (point)) (1+ (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
856 ;; insert single space if not at end of line;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
857 ;; else line is already broken.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
858 (if (not (= (following-char) ?\n))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
859 (insert ? )))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
860 ((= (following-char) ?\t)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
861 (delete-region (1- (point)) (1+ (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
862 ;; insert single space if not at end of line;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
863 ;; else line is already broken.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
864 (if (not (= (following-char) ?\n))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
865 (insert ? )))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
866 ;; following char is a carriage return
27254
650eddd41858 (texinfo-format-scan): Use ?\n instead
Gerd Moellmann <gerd@gnu.org>
parents: 25278
diff changeset
867 ((= (following-char) ?\n)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
868 ;; remove command
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
869 (delete-region (1- (point)) (1+ (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
870 ;; insert single space if not at end of line;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
871 ;; else line is already broken.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
872 (if (not (= (following-char) ?\n))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
873 (insert ? )))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
874 ;; Otherwise: the other characters are simply quoted. Delete the @.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
875 (t
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
876 (delete-char -1)
36300
e4408f5badaf Fix a typo in a comment.
Eli Zaretskii <eliz@gnu.org>
parents: 36287
diff changeset
877 ;; Be compatible with makeinfo: if @' and its ilk are
36287
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
878 ;; followed by a @ without a brace, barf.
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
879 (if (looking-at "[\"'^`~=]")
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
880 (progn
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
881 (if (= (char-after (1+ (point))) ?@)
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
882 (error "Use braces to give a command as an argument to @%c"
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
883 (following-char)))
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
884 (forward-char 1)
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
885 ;; @' etc. can optionally accept their argument in
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
886 ;; braces (makeinfo supports that).
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
887 (when (looking-at "{")
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
888 (let ((start (point)))
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
889 (forward-list 1)
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
890 (delete-char -1)
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
891 (goto-char start)
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
892 (delete-char 1))))
6619db0066d9 (texinfo-format-scan): Signal an error if
Eli Zaretskii <eliz@gnu.org>
parents: 28740
diff changeset
893 (forward-char 1))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
894 ;; @ is followed by a command-word; find the end of the word.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
895 (setq texinfo-command-start (1- (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
896 (if (= (char-syntax (following-char)) ?w)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
897 (forward-word 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
898 (forward-char 1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
899 (setq texinfo-command-end (point))
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
900 ;; Detect the case of two @-commands in a row;
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
901 ;; process just the first one.
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
902 (goto-char (1+ texinfo-command-start))
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
903 (skip-chars-forward "^@" texinfo-command-end)
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
904 (setq texinfo-command-end (point))
9759
ebe611f49450 (texinfo-alias-list): New variable.
Richard M. Stallman <rms@gnu.org>
parents: 9754
diff changeset
905 ;; Handle let aliasing
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
906 (setq texinfo-command-name
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
907 (let (trial
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
908 (cmdname
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
909 (buffer-substring-no-properties
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
910 (1+ texinfo-command-start) texinfo-command-end)))
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
911 (while (setq trial (assoc cmdname texinfo-alias-list))
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
912 (setq cmdname (cdr trial)))
9759
ebe611f49450 (texinfo-alias-list): New variable.
Richard M. Stallman <rms@gnu.org>
parents: 9754
diff changeset
913 (intern cmdname)))
ebe611f49450 (texinfo-alias-list): New variable.
Richard M. Stallman <rms@gnu.org>
parents: 9754
diff changeset
914 ;; Call the handler for this command.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
915 (let ((enclosure-type
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
916 (assoc
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
917 (symbol-name texinfo-command-name)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
918 texinfo-enclosure-list)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
919 (if enclosure-type
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
920 (progn
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
921 (insert
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
922 (car (car (cdr enclosure-type)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
923 (texinfo-parse-arg-discard)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
924 (car (cdr (car (cdr enclosure-type)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
925 (goto-char texinfo-command-start))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
926 (let ((cmd (get texinfo-command-name 'texinfo-format)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
927 (if cmd (funcall cmd) (texinfo-unsupported)))))))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
928
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
929 (cond (texinfo-stack
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
930 (goto-char (nth 2 (car texinfo-stack)))
48697
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
931 (error "Unterminated @%s" (car (car texinfo-stack)))))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
932
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
933 ;; Remove excess whitespace
51550
5ffaa82e4d48 (texinfo-format-scan): Silence `whitespace-cleanup'.
Juanma Barranquero <lekktu@gmail.com>
parents: 49700
diff changeset
934 (let ((whitespace-silent t))
5ffaa82e4d48 (texinfo-format-scan): Silence `whitespace-cleanup'.
Juanma Barranquero <lekktu@gmail.com>
parents: 49700
diff changeset
935 (whitespace-cleanup)))
48697
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
936
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
937 (defvar texinfo-copying-text ""
48697
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
938 "Text of the copyright notice and copying permissions.")
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
939
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
940 (defun texinfo-copying ()
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
941 "Copy the copyright notice and copying permissions from the Texinfo file,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
942 as indicated by the @copying ... @end copying command;
48697
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
943 insert the text with the @insertcopying command."
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
944 (let ((beg (progn (beginning-of-line) (point)))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
945 (end (progn (re-search-forward "^@end copying[ \t]*\n") (point))))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
946 (setq texinfo-copying-text
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
947 (buffer-substring-no-properties
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
948 (save-excursion (goto-char beg) (forward-line 1) (point))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
949 (save-excursion (goto-char end) (forward-line -1) (point))))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
950 (delete-region beg end)))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
951
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
952 (defun texinfo-insertcopying ()
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
953 "Insert the copyright notice and copying permissions from the Texinfo file,
48697
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
954 which are indicated by the @copying ... @end copying command."
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
955 (insert (concat "\n" texinfo-copying-text)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
956
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
957 (put 'begin 'texinfo-format 'texinfo-format-begin)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
958 (defun texinfo-format-begin ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
959 (texinfo-format-begin-end 'texinfo-format))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
960
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
961 (put 'end 'texinfo-format 'texinfo-format-end)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
962 (defun texinfo-format-end ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
963 (texinfo-format-begin-end 'texinfo-end))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
964
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
965 (defun texinfo-format-begin-end (prop)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
966 (setq texinfo-command-name (intern (texinfo-parse-line-arg)))
4868
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
967 (let ((cmd (get texinfo-command-name prop)))
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
968 (if cmd (funcall cmd)
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
969 (texinfo-unsupported))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
970
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
971 ;;; Parsing functions
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
972
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
973 (defun texinfo-parse-line-arg ()
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
974 "Return argument of @-command as string.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
975 Argument is separated from command either by a space or by a brace.
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
976 If a space, return rest of line, with beginning and ending white
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
977 space removed. If a brace, return string between braces.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
978 Leave point after argument."
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
979 (goto-char texinfo-command-end)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
980 (let ((start (point)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
981 (cond ((looking-at " ")
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
982 (skip-chars-forward " ")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
983 (setq start (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
984 (end-of-line)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
985 (skip-chars-backward " ")
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
986 (delete-region (point) (progn (end-of-line) (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
987 (setq texinfo-command-end (1+ (point))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
988 ((looking-at "{")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
989 (setq start (1+ (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
990 (forward-list 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
991 (setq texinfo-command-end (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
992 (forward-char -1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
993 (t
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
994 (error "Invalid texinfo command arg format")))
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
995 (prog1 (buffer-substring-no-properties start (point))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
996 (if (eolp) (forward-char 1)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
997
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
998 (defun texinfo-parse-expanded-arg ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
999 (goto-char texinfo-command-end)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1000 (let ((start (point))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1001 marker)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1002 (cond ((looking-at " ")
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1003 (skip-chars-forward " ")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1004 (setq start (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1005 (end-of-line)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1006 (setq texinfo-command-end (1+ (point))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1007 ((looking-at "{")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1008 (setq start (1+ (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1009 (forward-list 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1010 (setq texinfo-command-end (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1011 (forward-char -1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1012 (t
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1013 (error "Invalid texinfo command arg format")))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1014 (setq marker (move-marker (make-marker) texinfo-command-end))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1015 (texinfo-format-expand-region start (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1016 (setq texinfo-command-end (marker-position marker))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1017 (move-marker marker nil)
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
1018 (prog1 (buffer-substring-no-properties start (point))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1019 (if (eolp) (forward-char 1)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1020
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1021 (defun texinfo-format-expand-region (start end)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1022 (save-restriction
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1023 (narrow-to-region start end)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1024 (let (texinfo-command-start
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1025 texinfo-command-end
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1026 texinfo-command-name
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1027 texinfo-stack)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1028 (texinfo-format-scan))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1029 (goto-char (point-max))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1030
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1031 (defun texinfo-parse-arg-discard ()
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1032 "Delete command and argument; return argument of command."
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1033 (prog1 (texinfo-parse-line-arg)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1034 (texinfo-discard-command)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1035
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1036 (defun texinfo-discard-command ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1037 (delete-region texinfo-command-start texinfo-command-end))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1038
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1039 (defun texinfo-optional-braces-discard ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1040 "Discard braces following command, if any."
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1041 (goto-char texinfo-command-end)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1042 (let ((start (point)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1043 (cond ((looking-at "[ \t]*\n")) ; do nothing
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1044 ((looking-at "{") ; remove braces, if any
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1045 (forward-list 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1046 (setq texinfo-command-end (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1047 (t
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1048 (error
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1049 "Invalid `texinfo-optional-braces-discard' format \(need braces?\)")))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1050 (delete-region texinfo-command-start texinfo-command-end)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1051
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1052 (defun texinfo-format-parse-line-args ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1053 (let ((start (1- (point)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1054 next beg end
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1055 args)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1056 (skip-chars-forward " ")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1057 (while (not (eolp))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1058 (setq beg (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1059 (re-search-forward "[\n,]")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1060 (setq next (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1061 (if (bolp) (setq next (1- next)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1062 (forward-char -1)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1063 (skip-chars-backward " ")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1064 (setq end (point))
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
1065 (push (if (> end beg) (buffer-substring-no-properties beg end))
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
1066 args)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1067 (goto-char next)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1068 (skip-chars-forward " "))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1069 (if (eolp) (forward-char 1))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1070 (setq texinfo-command-end (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1071 (nreverse args)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1072
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1073 (defun texinfo-format-parse-args ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1074 (let ((start (1- (point)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1075 next beg end
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1076 args)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1077 (search-forward "{")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1078 (save-excursion
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1079 (texinfo-format-expand-region
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1080 (point)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1081 (save-excursion (up-list 1) (1- (point)))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1082 ;; The following does not handle cross references of the form:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1083 ;; `@xref{bullet, , @code{@@bullet}@{@}}.' because the
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1084 ;; re-search-forward finds the first right brace after the second
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1085 ;; comma.
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1086 (while (/= (preceding-char) ?\})
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1087 (skip-chars-forward " \t\n")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1088 (setq beg (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1089 (re-search-forward "[},]")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1090 (setq next (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1091 (forward-char -1)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1092 (skip-chars-backward " \t\n")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1093 (setq end (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1094 (cond ((< beg end)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1095 (goto-char beg)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1096 (while (search-forward "\n" end t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1097 (replace-match " "))))
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
1098 (push (if (> end beg) (buffer-substring-no-properties beg end))
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
1099 args)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1100 (goto-char next))
37538
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
1101 ;;(if (eolp) (forward-char 1))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1102 (setq texinfo-command-end (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1103 (nreverse args)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1104
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1105 (defun texinfo-format-parse-defun-args ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1106 (goto-char texinfo-command-end)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1107 (let ((start (point)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1108 (end-of-line)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1109 (setq texinfo-command-end (1+ (point)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1110 (let ((marker (move-marker (make-marker) texinfo-command-end)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1111 (texinfo-format-expand-region start (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1112 (setq texinfo-command-end (marker-position marker))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1113 (move-marker marker nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1114 (goto-char start)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1115 (let ((args '())
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1116 beg end)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1117 (skip-chars-forward " ")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1118 (while (not (eolp))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1119 (cond ((looking-at "{")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1120 (setq beg (1+ (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1121 (forward-list 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1122 (setq end (1- (point))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1123 (t
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1124 (setq beg (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1125 (re-search-forward "[\n ]")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1126 (forward-char -1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1127 (setq end (point))))
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
1128 (push (buffer-substring-no-properties beg end) args)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1129 (skip-chars-forward " "))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1130 (forward-char 1)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1131 (nreverse args))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1132
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1133 (defun texinfo-discard-line ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1134 (goto-char texinfo-command-end)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1135 (skip-chars-forward " \t")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1136 (or (eolp)
38436
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38044
diff changeset
1137 (error "Extraneous text at end of command line"))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1138 (goto-char texinfo-command-start)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1139 (or (bolp)
38436
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38044
diff changeset
1140 (error "Extraneous text at beginning of command line"))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1141 (delete-region (point) (progn (forward-line 1) (point))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1142
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1143 (defun texinfo-discard-line-with-args ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1144 (goto-char texinfo-command-start)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1145 (delete-region (point) (progn (forward-line 1) (point))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1146
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1147
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1148 ;;; @setfilename
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1149
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1150 ;; Only `texinfo-format-buffer' handles @setfilename with this
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1151 ;; definition; `texinfo-format-region' handles @setfilename, if any,
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1152 ;; specially.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1153 (put 'setfilename 'texinfo-format 'texinfo-format-setfilename)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1154 (defun texinfo-format-setfilename ()
18818
3c0dec827888 (texinfo-format-buffer-1): Insert, here,
Richard M. Stallman <rms@gnu.org>
parents: 17939
diff changeset
1155 (texinfo-parse-arg-discard))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1156
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1157 ;;; @node, @menu, @detailmenu
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1158
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1159 (put 'node 'texinfo-format 'texinfo-format-node)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1160 (put 'nwnode 'texinfo-format 'texinfo-format-node)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1161 (defun texinfo-format-node ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1162 (let* ((args (texinfo-format-parse-line-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1163 (name (nth 0 args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1164 (next (nth 1 args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1165 (prev (nth 2 args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1166 (up (nth 3 args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1167 (texinfo-discard-command)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1168 (setq texinfo-last-node name)
24314
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
1169 (let ((tem (if texinfo-fold-nodename-case (downcase name) name)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1170 (if (assoc tem texinfo-node-names)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1171 (error "Duplicate node name: %s" name)
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
1172 (push (list tem) texinfo-node-names)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1173 (setq texinfo-footnote-number 0)
9896
a70b99926339 (texinfo-format-node): Insert the node delimiter
Richard M. Stallman <rms@gnu.org>
parents: 9759
diff changeset
1174 ;; insert "\n\^_" unconditionally since this is what info is looking for
a70b99926339 (texinfo-format-node): Insert the node delimiter
Richard M. Stallman <rms@gnu.org>
parents: 9759
diff changeset
1175 (insert "\n\^_\nFile: " texinfo-format-filename
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1176 ", Node: " name)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1177 (if next
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1178 (insert ", Next: " next))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1179 (if prev
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1180 (insert ", Prev: " prev))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1181 (if up
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1182 (insert ", Up: " up))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1183 (insert ?\n)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1184 (setq texinfo-last-node-pos (point))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1185
22661
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1186 (put 'anchor 'texinfo-format 'texinfo-anchor)
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1187 (defun texinfo-anchor ()
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1188 (let (anchor-string
22661
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1189 (here (- (point) 7)) ; save location of beginning of `@anchor'
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1190 (arg (texinfo-parse-arg-discard)))
24745
aa8417416f03 (texinfo-anchor): Don't delete a non-speace after the @anchor command.
Richard M. Stallman <rms@gnu.org>
parents: 24621
diff changeset
1191 (if (looking-at " ") ; since a space may be left after -discard
aa8417416f03 (texinfo-anchor): Don't delete a non-speace after the @anchor command.
Richard M. Stallman <rms@gnu.org>
parents: 24621
diff changeset
1192 (delete-char 1))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1193 (forward-paragraph)
22661
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1194 (let ((end (point)))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1195 (if (save-excursion
22661
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1196 (backward-word 1)
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1197 (search-forward "@refill" end t))
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1198 (setq anchor-string "@anchor-yes-refill")
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1199 (setq anchor-string "@anchor-no-refill")))
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1200 (goto-char here)
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1201 (insert anchor-string "{" arg "}")))
90460d1e2c3f (texinfo-anchor): New function.
Richard M. Stallman <rms@gnu.org>
parents: 19630
diff changeset
1202
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1203 (put 'menu 'texinfo-format 'texinfo-format-menu)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1204 (defun texinfo-format-menu ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1205 (texinfo-discard-line)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1206 (insert "* Menu:\n\n"))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1207
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1208 (put 'menu 'texinfo-end 'texinfo-discard-command)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1209
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1210 ;; The @detailmenu should be removed eventually.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1211
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1212 ;; According to Karl Berry, 31 August 1996:
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1213 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1214 ;; You don't like, I don't like it. I agree, it would be better just to
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1215 ;; fix the bug [in `makeinfo']. .. At this point, since inserting those
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1216 ;; two commands in the Elisp fn is trivial, I don't especially want to
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1217 ;; expend more effort...
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1218 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1219 ;; I added a couple sentences of documentation to the manual (putting the
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1220 ;; blame on makeinfo where it belongs :-().
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1221
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1222 (put 'detailmenu 'texinfo-format 'texinfo-discard-line)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1223 (put 'detailmenu 'texinfo-end 'texinfo-discard-command)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1224
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1225 ;; (Also see `texnfo-upd.el')
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1226
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1227
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1228 ;;; Cross references
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1229
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1230 ;; @xref {NODE, FNAME, NAME, FILE, DOCUMENT}
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1231 ;; -> *Note FNAME: (FILE)NODE
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1232 ;; If FILE is missing,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1233 ;; *Note FNAME: NODE
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1234 ;; If FNAME is empty and NAME is present
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1235 ;; *Note NAME: Node
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1236 ;; If both NAME and FNAME are missing
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1237 ;; *Note NODE::
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1238 ;; texinfo ignores the DOCUMENT argument.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1239 ;; -> See section <xref to NODE> [NAME, else NODE], page <xref to NODE>
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1240 ;; If FILE is specified, (FILE)NODE is used for xrefs.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1241 ;; If fifth argument DOCUMENT is specified, produces
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1242 ;; See section <xref to NODE> [NAME, else NODE], page <xref to NODE>
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1243 ;; of DOCUMENT
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1244
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1245 ;; @ref a reference that does not put `See' or `see' in
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1246 ;; the hardcopy and is the same as @xref in Info
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1247 (put 'ref 'texinfo-format 'texinfo-format-xref)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1248
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1249 (put 'xref 'texinfo-format 'texinfo-format-xref)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1250 (defun texinfo-format-xref ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1251 (let ((args (texinfo-format-parse-args)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1252 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1253 (insert "*Note ")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1254 (let ((fname (or (nth 1 args) (nth 2 args))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1255 (if (null (or fname (nth 3 args)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1256 (insert (car args) "::")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1257 (insert (or fname (car args)) ": ")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1258 (if (nth 3 args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1259 (insert "(" (nth 3 args) ")"))
28740
14cc47ddd47a (texinfo-format-xref): Don't try to insert nil.
Gerd Moellmann <gerd@gnu.org>
parents: 27254
diff changeset
1260 (and (car args) (insert (car args)))))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1261
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1262 (put 'pxref 'texinfo-format 'texinfo-format-pxref)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1263 (defun texinfo-format-pxref ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1264 (texinfo-format-xref)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1265 (or (save-excursion
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1266 (forward-char -2)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1267 (looking-at "::"))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1268 (insert ".")))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1269
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1270 ;; @inforef{NODE, FNAME, FILE}
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1271 ;; Like @xref{NODE, FNAME,,FILE} in texinfo.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1272 ;; In Tex, generates "See Info file FILE, node NODE"
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1273 (put 'inforef 'texinfo-format 'texinfo-format-inforef)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1274 (defun texinfo-format-inforef ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1275 (let ((args (texinfo-format-parse-args)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1276 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1277 (if (nth 1 args)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1278 (insert "*Note " (nth 1 args) ": (" (nth 2 args) ")" (car args))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1279 (insert "*Note " "(" (nth 2 args) ")" (car args) "::"))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1280
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1281
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1282 ;;; URL Reference: @uref
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1283
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1284 ;; @uref produces a reference to a uniform resource locator (URL).
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1285 ;; It takes one mandatory argument, the URL, and one optional argument,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1286 ;; the text to display (the default is the URL itself).
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1287
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1288 (put 'uref 'texinfo-format 'texinfo-format-uref)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1289 (defun texinfo-format-uref ()
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1290 "Format URL and optional URL-TITLE.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1291 Insert ` ... ' around URL if no URL-TITLE argument;
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1292 otherwise, insert URL-TITLE followed by URL in parentheses."
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1293 (let ((args (texinfo-format-parse-args)))
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1294 (texinfo-discard-command)
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1295 ;; if url-title
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1296 (if (nth 1 args)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1297 (insert (nth 1 args) " (" (nth 0 args) ")")
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1298 (insert "`" (nth 0 args) "'"))
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1299 (goto-char texinfo-command-start)))
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1300
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
1301
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1302 ;;; Section headings
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1303
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1304 (put 'majorheading 'texinfo-format 'texinfo-format-chapter)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1305 (put 'chapheading 'texinfo-format 'texinfo-format-chapter)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1306 (put 'ichapter 'texinfo-format 'texinfo-format-chapter)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1307 (put 'chapter 'texinfo-format 'texinfo-format-chapter)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1308 (put 'iappendix 'texinfo-format 'texinfo-format-chapter)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1309 (put 'appendix 'texinfo-format 'texinfo-format-chapter)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1310 (put 'iunnumbered 'texinfo-format 'texinfo-format-chapter)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1311 (put 'top 'texinfo-format 'texinfo-format-chapter)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1312 (put 'unnumbered 'texinfo-format 'texinfo-format-chapter)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1313 (put 'centerchap 'texinfo-format 'texinfo-format-chapter)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1314 (defun texinfo-format-chapter ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1315 (texinfo-format-chapter-1 ?*))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1316
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1317 (put 'heading 'texinfo-format 'texinfo-format-section)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1318 (put 'isection 'texinfo-format 'texinfo-format-section)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1319 (put 'section 'texinfo-format 'texinfo-format-section)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1320 (put 'iappendixsection 'texinfo-format 'texinfo-format-section)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1321 (put 'appendixsection 'texinfo-format 'texinfo-format-section)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1322 (put 'iappendixsec 'texinfo-format 'texinfo-format-section)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1323 (put 'appendixsec 'texinfo-format 'texinfo-format-section)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1324 (put 'iunnumberedsec 'texinfo-format 'texinfo-format-section)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1325 (put 'unnumberedsec 'texinfo-format 'texinfo-format-section)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1326 (defun texinfo-format-section ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1327 (texinfo-format-chapter-1 ?=))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1328
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1329 (put 'subheading 'texinfo-format 'texinfo-format-subsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1330 (put 'isubsection 'texinfo-format 'texinfo-format-subsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1331 (put 'subsection 'texinfo-format 'texinfo-format-subsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1332 (put 'iappendixsubsec 'texinfo-format 'texinfo-format-subsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1333 (put 'appendixsubsec 'texinfo-format 'texinfo-format-subsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1334 (put 'iunnumberedsubsec 'texinfo-format 'texinfo-format-subsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1335 (put 'unnumberedsubsec 'texinfo-format 'texinfo-format-subsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1336 (defun texinfo-format-subsection ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1337 (texinfo-format-chapter-1 ?-))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1338
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1339 (put 'subsubheading 'texinfo-format 'texinfo-format-subsubsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1340 (put 'isubsubsection 'texinfo-format 'texinfo-format-subsubsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1341 (put 'subsubsection 'texinfo-format 'texinfo-format-subsubsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1342 (put 'iappendixsubsubsec 'texinfo-format 'texinfo-format-subsubsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1343 (put 'appendixsubsubsec 'texinfo-format 'texinfo-format-subsubsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1344 (put 'iunnumberedsubsubsec 'texinfo-format 'texinfo-format-subsubsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1345 (put 'unnumberedsubsubsec 'texinfo-format 'texinfo-format-subsubsection)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1346 (defun texinfo-format-subsubsection ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1347 (texinfo-format-chapter-1 ?.))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1348
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1349 (defun texinfo-format-chapter-1 (belowchar)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1350 (let ((arg (texinfo-parse-arg-discard)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1351 (message "Formatting: %s ... " arg) ; So we can see where we are.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1352 (insert ?\n arg ?\n "@SectionPAD " belowchar ?\n)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1353 (forward-line -2)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1354
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1355 (put 'SectionPAD 'texinfo-format 'texinfo-format-sectionpad)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1356 (defun texinfo-format-sectionpad ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1357 (let ((str (texinfo-parse-arg-discard)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1358 (forward-char -1)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1359 (let ((column (current-column)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1360 (forward-char 1)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1361 (while (> column 0)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1362 (insert str)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1363 (setq column (1- column))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1364 (insert ?\n)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1365
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1366
9754
7e9b8823755b (texinfo-format-scan): Make @- vanish; don't insert -.
Richard M. Stallman <rms@gnu.org>
parents: 9549
diff changeset
1367 ;;; Space controlling commands: @. and @:, and the soft hyphen.
7e9b8823755b (texinfo-format-scan): Make @- vanish; don't insert -.
Richard M. Stallman <rms@gnu.org>
parents: 9549
diff changeset
1368
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1369 (put '\. 'texinfo-format 'texinfo-format-\.)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1370 (defun texinfo-format-\. ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1371 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1372 (insert "."))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1373
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1374 (put '\: 'texinfo-format 'texinfo-format-\:)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1375 (defun texinfo-format-\: ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1376 (texinfo-discard-command))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1377
9754
7e9b8823755b (texinfo-format-scan): Make @- vanish; don't insert -.
Richard M. Stallman <rms@gnu.org>
parents: 9549
diff changeset
1378 (put '\- 'texinfo-format 'texinfo-format-soft-hyphen)
7e9b8823755b (texinfo-format-scan): Make @- vanish; don't insert -.
Richard M. Stallman <rms@gnu.org>
parents: 9549
diff changeset
1379 (defun texinfo-format-soft-hyphen ()
7e9b8823755b (texinfo-format-scan): Make @- vanish; don't insert -.
Richard M. Stallman <rms@gnu.org>
parents: 9549
diff changeset
1380 (texinfo-discard-command))
7e9b8823755b (texinfo-format-scan): Make @- vanish; don't insert -.
Richard M. Stallman <rms@gnu.org>
parents: 9549
diff changeset
1381
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1382
48794
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1383 ;;; @kbdinputstyle, @vskip, headings & footings
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1384 ;; These commands for not for Info and should never
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1385 ;; appear in an Info environment; but if they do,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1386 ;; this causes them to be discarded.
48794
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1387
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1388 ;; @kbdinputstyle
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1389 (put 'kbdinputstyle 'texinfo-format 'texinfo-discard-line-with-args)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1390
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1391 ;; @vskip
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1392 (put 'vskip 'texinfo-format 'texinfo-discard-line-with-args)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1393
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1394 ;; headings & footings
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1395 (put 'evenfooting 'texinfo-format 'texinfo-discard-line-with-args)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1396 (put 'evenheading 'texinfo-format 'texinfo-discard-line-with-args)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1397 (put 'oddfooting 'texinfo-format 'texinfo-discard-line-with-args)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1398 (put 'oddheading 'texinfo-format 'texinfo-discard-line-with-args)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1399 (put 'everyfooting 'texinfo-format 'texinfo-discard-line-with-args)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1400 (put 'everyheading 'texinfo-format 'texinfo-discard-line-with-args)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1401
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1402
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1403 ;;; @documentdescription ... @end documentdescription
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1404 ;; This command is for HTML output and should never
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1405 ;; appear in an Info environment; but if it does,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1406 ;; this causes it to be discarded.
48794
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1407
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1408 (put 'documentdescription 'texinfo-format 'texinfo-format-documentdescription)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1409 (defun texinfo-format-documentdescription ()
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1410 (delete-region texinfo-command-start
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1411 (progn (re-search-forward "^@end documentdescription[ \t]*\n")
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1412 (point))))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1413
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1414
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
1415
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1416 ;;; @center, @sp, and @br
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1417
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1418 (put 'center 'texinfo-format 'texinfo-format-center)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1419 (defun texinfo-format-center ()
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1420 (let ((arg (texinfo-parse-expanded-arg)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1421 (texinfo-discard-command)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1422 (insert arg)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1423 (insert ?\n)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1424 (save-restriction
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1425 (goto-char (1- (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1426 (let ((indent-tabs-mode nil))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1427 (center-line)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1428
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1429 (put 'sp 'texinfo-format 'texinfo-format-sp)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1430 (defun texinfo-format-sp ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1431 (let* ((arg (texinfo-parse-arg-discard))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1432 (num (read arg)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1433 (insert-char ?\n num)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1434
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1435 (put 'br 'texinfo-format 'texinfo-format-paragraph-break)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1436 (defun texinfo-format-paragraph-break ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1437 "Force a paragraph break.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1438 If used within a line, follow `@br' with braces."
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1439 (texinfo-optional-braces-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1440 ;; insert one return if at end of line;
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1441 ;; else insert two returns, to generate a blank line.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1442 (if (= (following-char) ?\n)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1443 (insert ?\n)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1444 (insert-char ?\n 2)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1445
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1446
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1447 ;;; @footnote and @footnotestyle
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1448
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1449 ;; In Texinfo, footnotes are created with the `@footnote' command.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1450 ;; This command is followed immediately by a left brace, then by the text of
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1451 ;; the footnote, and then by a terminating right brace. The
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1452 ;; template for a footnote is:
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1453 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1454 ;; @footnote{TEXT}
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1455 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1456 ;; Info has two footnote styles:
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1457 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1458 ;; * In the End of node style, all the footnotes for a single node
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1459 ;; are placed at the end of that node. The footnotes are
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1460 ;; separated from the rest of the node by a line of dashes with
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1461 ;; the word `Footnotes' within it.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1462 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1463 ;; * In the Separate node style, all the footnotes for a single node
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1464 ;; are placed in an automatically constructed node of their own.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1465
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1466 ;; Footnote style is specified by the @footnotestyle command, either
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1467 ;; @footnotestyle separate
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1468 ;; or
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1469 ;; @footnotestyle end
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1470 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1471 ;; The default is separate
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1472
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1473 (defvar texinfo-footnote-style "separate"
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1474 "Footnote style, either separate or end.")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1475
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1476 (put 'footnotestyle 'texinfo-format 'texinfo-footnotestyle)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1477 (defun texinfo-footnotestyle ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1478 "Specify whether footnotes are at end of node or in separate nodes.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1479 Argument is either end or separate."
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1480 (setq texinfo-footnote-style (texinfo-parse-arg-discard)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1481
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1482 (put 'footnote 'texinfo-format 'texinfo-format-footnote)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1483 (defun texinfo-format-footnote ()
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1484 "Format a footnote in either end of node or separate node style.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1485 The texinfo-footnote-style variable controls which style is used."
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1486 (setq texinfo-footnote-number (1+ texinfo-footnote-number))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1487 (cond ((string= texinfo-footnote-style "end")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1488 (texinfo-format-end-node))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1489 ((string= texinfo-footnote-style "separate")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1490 (texinfo-format-separate-node))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1491
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1492 (defun texinfo-format-separate-node ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1493 "Format footnote in Separate node style, with notes in own node.
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1494 The node is constructed automatically."
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1495 (let* (start
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1496 (arg (texinfo-parse-line-arg))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1497 (node-name-beginning
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1498 (save-excursion
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1499 (re-search-backward
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1500 "^File: \\w+\\(\\w\\|\\s_\\|\\.\\|,\\)*[ \t]+Node:")
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1501 (match-end 0)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1502 (node-name
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1503 (save-excursion
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
1504 (buffer-substring-no-properties
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1505 (progn (goto-char node-name-beginning) ; skip over node command
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1506 (skip-chars-forward " \t") ; and over spaces
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1507 (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1508 (if (search-forward
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1509 ","
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1510 (save-excursion (end-of-line) (point)) t) ; bound search
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1511 (1- (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1512 (end-of-line) (point))))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1513 (texinfo-discard-command) ; remove or insert whitespace, as needed
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1514 (delete-region (save-excursion (skip-chars-backward " \t\n") (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1515 (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1516 (insert (format " (%d) (*Note %s-Footnotes::)"
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1517 texinfo-footnote-number node-name))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1518 (fill-paragraph nil)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1519 (save-excursion
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1520 (if (re-search-forward "^@node" nil 'move)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1521 (forward-line -1))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1522
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1523 ;; two cases: for the first footnote, we must insert a node header;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1524 ;; for the second and subsequent footnotes, we need only insert
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1525 ;; the text of the footnote.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1526
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1527 (if (save-excursion
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
1528 (search-backward
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1529 (concat node-name "-Footnotes, Up: ")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1530 node-name-beginning
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1531 t))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1532 (progn ; already at least one footnote
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1533 (setq start (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1534 (insert (format "\n(%d) %s\n" texinfo-footnote-number arg))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1535 (fill-region start (point)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1536 ;; else not yet a footnote
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1537 (insert "\n\^_\nFile: " texinfo-format-filename
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1538 " Node: " node-name "-Footnotes, Up: " node-name "\n")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1539 (setq start (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1540 (insert (format "\n(%d) %s\n" texinfo-footnote-number arg))
71675
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
1541 (narrow-to-region (save-excursion (goto-char start) (point)) (point))
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
1542 (fill-region (point-min) (point-max))
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
1543 (widen)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1544
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1545 (defun texinfo-format-end-node ()
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1546 "Format footnote in the End of node style, with notes at end of node."
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1547 (let (start
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1548 (arg (texinfo-parse-line-arg)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1549 (texinfo-discard-command) ; remove or insert whitespace, as needed
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1550 (delete-region (save-excursion (skip-chars-backward " \t\n") (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1551 (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1552 (insert (format " (%d) " texinfo-footnote-number))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1553 (fill-paragraph nil)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1554 (save-excursion
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1555 (if (search-forward "\n--------- Footnotes ---------\n" nil t)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1556 (progn ; already have footnote, put new one before end of node
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1557 (if (re-search-forward "^@node" nil 'move)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1558 (forward-line -1))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1559 (setq start (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1560 (insert (format "\n(%d) %s\n" texinfo-footnote-number arg))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1561 (fill-region start (point)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1562 ;; else no prior footnote
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1563 (if (re-search-forward "^@node" nil 'move)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1564 (forward-line -1))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1565 (insert "\n--------- Footnotes ---------\n")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1566 (setq start (point))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1567 (insert (format "\n(%d) %s\n" texinfo-footnote-number arg))))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1568
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1569
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1570 ;;; @itemize, @enumerate, and similar commands
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1571
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1572 ;; @itemize pushes (itemize "COMMANDS" STARTPOS) on texinfo-stack.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1573 ;; @enumerate pushes (enumerate 0 STARTPOS).
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1574 ;; @item dispatches to the texinfo-item prop of the first elt of the list.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1575 ;; For itemize, this puts in and rescans the COMMANDS.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1576 ;; For enumerate, this increments the number and puts it in.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1577 ;; In either case, it puts a Backspace at the front of the line
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1578 ;; which marks it not to be indented later.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1579 ;; All other lines get indented by 5 when the @end is reached.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1580
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1581 (defvar texinfo-stack-depth 0
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1582 "Count of number of unpopped texinfo-push-stack calls.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1583 Used by @refill indenting command to avoid indenting within lists, etc.")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1584
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1585 (defun texinfo-push-stack (check arg)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1586 (setq texinfo-stack-depth (1+ texinfo-stack-depth))
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
1587 (push (list check arg texinfo-command-start)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
1588 texinfo-stack))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1589
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1590 (defun texinfo-pop-stack (check)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1591 (setq texinfo-stack-depth (1- texinfo-stack-depth))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1592 (if (null texinfo-stack)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1593 (error "Unmatched @end %s" check))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1594 (if (not (eq (car (car texinfo-stack)) check))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1595 (error "@end %s matches @%s"
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1596 check (car (car texinfo-stack))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1597 (prog1 (cdr (car texinfo-stack))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1598 (setq texinfo-stack (cdr texinfo-stack))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1599
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1600 (put 'itemize 'texinfo-format 'texinfo-itemize)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1601 (defun texinfo-itemize ()
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1602 (texinfo-push-stack
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1603 'itemize
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1604 (progn (skip-chars-forward " \t")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1605 (if (eolp)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1606 "@bullet"
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1607 (texinfo-parse-line-arg))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1608 (texinfo-discard-line-with-args)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1609 (setq fill-column (- fill-column 5)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1610
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1611 (put 'itemize 'texinfo-end 'texinfo-end-itemize)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1612 (defun texinfo-end-itemize ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1613 (setq fill-column (+ fill-column 5))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1614 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1615 (let ((stacktop
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1616 (texinfo-pop-stack 'itemize)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1617 (texinfo-do-itemize (nth 1 stacktop))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1618
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1619 (put 'enumerate 'texinfo-format 'texinfo-enumerate)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1620 (defun texinfo-enumerate ()
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1621 (texinfo-push-stack
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1622 'enumerate
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1623 (progn (skip-chars-forward " \t")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1624 (if (eolp)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1625 1
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1626 (read (current-buffer)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1627 (if (and (symbolp (car (cdr (car texinfo-stack))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1628 (> 1 (length (symbol-name (car (cdr (car texinfo-stack)))))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1629 (error
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1630 "@enumerate: Use a number or letter, eg: 1, A, a, 3, B, or d." ))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1631 (texinfo-discard-line-with-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1632 (setq fill-column (- fill-column 5)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1633
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1634 (put 'enumerate 'texinfo-end 'texinfo-end-enumerate)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1635 (defun texinfo-end-enumerate ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1636 (setq fill-column (+ fill-column 5))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1637 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1638 (let ((stacktop
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1639 (texinfo-pop-stack 'enumerate)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1640 (texinfo-do-itemize (nth 1 stacktop))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1641
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1642 ;; @alphaenumerate never became a standard part of Texinfo
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1643 (put 'alphaenumerate 'texinfo-format 'texinfo-alphaenumerate)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1644 (defun texinfo-alphaenumerate ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1645 (texinfo-push-stack 'alphaenumerate (1- ?a))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1646 (setq fill-column (- fill-column 5))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1647 (texinfo-discard-line))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1648
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1649 (put 'alphaenumerate 'texinfo-end 'texinfo-end-alphaenumerate)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1650 (defun texinfo-end-alphaenumerate ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1651 (setq fill-column (+ fill-column 5))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1652 (texinfo-discard-command)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1653 (let ((stacktop
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1654 (texinfo-pop-stack 'alphaenumerate)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1655 (texinfo-do-itemize (nth 1 stacktop))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1656
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1657 ;; @capsenumerate never became a standard part of Texinfo
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1658 (put 'capsenumerate 'texinfo-format 'texinfo-capsenumerate)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1659 (defun texinfo-capsenumerate ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1660 (texinfo-push-stack 'capsenumerate (1- ?A))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1661 (setq fill-column (- fill-column 5))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1662 (texinfo-discard-line))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1663
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1664 (put 'capsenumerate 'texinfo-end 'texinfo-end-capsenumerate)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1665 (defun texinfo-end-capsenumerate ()
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1666 (setq fill-column (+ fill-column 5))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1667 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1668 (let ((stacktop
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1669 (texinfo-pop-stack 'capsenumerate)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1670 (texinfo-do-itemize (nth 1 stacktop))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1671
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1672 ;; At the @end, indent all the lines within the construct
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1673 ;; except those marked with backspace. FROM says where
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1674 ;; construct started.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1675 (defun texinfo-do-itemize (from)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1676 (save-excursion
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1677 (while (progn (forward-line -1)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1678 (>= (point) from))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1679 (if (= (following-char) ?\b)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1680 (save-excursion
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1681 (delete-char 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1682 (end-of-line)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1683 (delete-char 6))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1684 (if (not (looking-at "[ \t]*$"))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1685 (save-excursion (insert " ")))))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1686
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1687 (put 'item 'texinfo-format 'texinfo-item)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1688 (put 'itemx 'texinfo-format 'texinfo-item)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1689 (defun texinfo-item ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1690 (funcall (get (car (car texinfo-stack)) 'texinfo-item)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1691
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1692 (put 'itemize 'texinfo-item 'texinfo-itemize-item)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1693 (defun texinfo-itemize-item ()
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1694 ;; (texinfo-discard-line) ; Did not handle text on same line as @item.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1695 (delete-region (1+ (point)) (save-excursion (beginning-of-line) (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1696 (if (looking-at "[ \t]*[^ \t\n]+")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1697 ;; Text on same line as @item command.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1698 (insert "\b " (nth 1 (car texinfo-stack)) " \n")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1699 ;; Else text on next line.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1700 (insert "\b " (nth 1 (car texinfo-stack)) " "))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1701 (forward-line -1))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1702
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1703 (put 'enumerate 'texinfo-item 'texinfo-enumerate-item)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1704 (defun texinfo-enumerate-item ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1705 (texinfo-discard-line)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1706 (let (enumerating-symbol)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1707 (cond ((integerp (car (cdr (car texinfo-stack))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1708 (setq enumerating-symbol (car (cdr (car texinfo-stack))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1709 (insert ?\b (format "%3d. " enumerating-symbol) ?\n)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1710 (setcar (cdr (car texinfo-stack)) (1+ enumerating-symbol)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1711 ((symbolp (car (cdr (car texinfo-stack))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1712 (setq enumerating-symbol
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1713 (symbol-name (car (cdr (car texinfo-stack)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1714 (if (or (equal ?\[ (string-to-char enumerating-symbol))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1715 (equal ?\{ (string-to-char enumerating-symbol)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1716 (error
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1717 "Too many items in enumerated list; alphabet ends at Z."))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1718 (insert ?\b (format "%3s. " enumerating-symbol) ?\n)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1719 (setcar (cdr (car texinfo-stack))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1720 (make-symbol
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1721 (char-to-string
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1722 (1+
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1723 (string-to-char enumerating-symbol))))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1724 (t
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1725 (error
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1726 "@enumerate: Use a number or letter, eg: 1, A, a, 3, B or d." )))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1727 (forward-line -1)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1728
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1729 (put 'alphaenumerate 'texinfo-item 'texinfo-alphaenumerate-item)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1730 (defun texinfo-alphaenumerate-item ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1731 (texinfo-discard-line)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1732 (let ((next (1+ (car (cdr (car texinfo-stack))))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1733 (if (> next ?z)
38436
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38044
diff changeset
1734 (error "More than 26 items in @alphaenumerate; get a bigger alphabet"))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1735 (setcar (cdr (car texinfo-stack)) next)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1736 (insert "\b " next ". \n"))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1737 (forward-line -1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1738
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1739 (put 'capsenumerate 'texinfo-item 'texinfo-capsenumerate-item)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1740 (defun texinfo-capsenumerate-item ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1741 (texinfo-discard-line)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1742 (let ((next (1+ (car (cdr (car texinfo-stack))))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1743 (if (> next ?Z)
38436
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38044
diff changeset
1744 (error "More than 26 items in @capsenumerate; get a bigger alphabet"))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1745 (setcar (cdr (car texinfo-stack)) next)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1746 (insert "\b " next ". \n"))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1747 (forward-line -1))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1748
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1749
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1750 ;;; @table
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1751
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1752 ;; The `@table' command produces two-column tables.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1753
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1754 (put 'table 'texinfo-format 'texinfo-table)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1755 (defun texinfo-table ()
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1756 (texinfo-push-stack
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1757 'table
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1758 (progn (skip-chars-forward " \t")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1759 (if (eolp)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1760 "@asis"
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1761 (texinfo-parse-line-arg))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1762 (texinfo-discard-line-with-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1763 (setq fill-column (- fill-column 5)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1764
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1765 (put 'table 'texinfo-item 'texinfo-table-item)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1766 (defun texinfo-table-item ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1767 (let ((arg (texinfo-parse-arg-discard))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1768 (itemfont (car (cdr (car texinfo-stack)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1769 (insert ?\b itemfont ?\{ arg "}\n \n"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1770 (forward-line -2))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1771
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1772 (put 'table 'texinfo-end 'texinfo-end-table)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1773 (defun texinfo-end-table ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1774 (setq fill-column (+ fill-column 5))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1775 (texinfo-discard-command)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1776 (let ((stacktop
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1777 (texinfo-pop-stack 'table)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1778 (texinfo-do-itemize (nth 1 stacktop))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1779
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1780 ;; @description appears to be an undocumented variant on @table that
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1781 ;; does not require an arg. It fails in texinfo.tex 2.58 and is not
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1782 ;; part of makeinfo.c The command appears to be a relic of the past.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1783 (put 'description 'texinfo-end 'texinfo-end-table)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1784 (put 'description 'texinfo-format 'texinfo-description)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1785 (defun texinfo-description ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1786 (texinfo-push-stack 'table "@asis")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1787 (setq fill-column (- fill-column 5))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1788 (texinfo-discard-line))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1789
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1790
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1791 ;;; @ftable, @vtable
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1792
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1793 ;; The `@ftable' and `@vtable' commands are like the `@table' command
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1794 ;; but they also insert each entry in the first column of the table
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1795 ;; into the function or variable index.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1796
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1797 ;; Handle the @ftable and @vtable commands:
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1798
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1799 (put 'ftable 'texinfo-format 'texinfo-ftable)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1800 (put 'vtable 'texinfo-format 'texinfo-vtable)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1801
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1802 (defun texinfo-ftable () (texinfo-indextable 'ftable))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1803 (defun texinfo-vtable () (texinfo-indextable 'vtable))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1804
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1805 (defun texinfo-indextable (table-type)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1806 (texinfo-push-stack table-type (texinfo-parse-arg-discard))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1807 (setq fill-column (- fill-column 5)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1808
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1809 ;; Handle the @item commands within ftable and vtable:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1810
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1811 (put 'ftable 'texinfo-item 'texinfo-ftable-item)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1812 (put 'vtable 'texinfo-item 'texinfo-vtable-item)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1813
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1814 (defun texinfo-ftable-item () (texinfo-indextable-item 'texinfo-findex))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1815 (defun texinfo-vtable-item () (texinfo-indextable-item 'texinfo-vindex))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1816
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1817 (defun texinfo-indextable-item (index-type)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1818 (let ((item (texinfo-parse-arg-discard))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1819 (itemfont (car (cdr (car texinfo-stack))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1820 (indexvar index-type))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1821 (insert ?\b itemfont ?\{ item "}\n \n")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1822 (set indexvar
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1823 (cons
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1824 (list item texinfo-last-node)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1825 (symbol-value indexvar)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1826 (forward-line -2)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1827
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1828 ;; Handle @end ftable, @end vtable
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1829
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1830 (put 'ftable 'texinfo-end 'texinfo-end-ftable)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1831 (put 'vtable 'texinfo-end 'texinfo-end-vtable)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1832
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1833 (defun texinfo-end-ftable () (texinfo-end-indextable 'ftable))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1834 (defun texinfo-end-vtable () (texinfo-end-indextable 'vtable))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1835
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1836 (defun texinfo-end-indextable (table-type)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1837 (setq fill-column (+ fill-column 5))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1838 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1839 (let ((stacktop
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
1840 (texinfo-pop-stack table-type)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1841 (texinfo-do-itemize (nth 1 stacktop))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1842
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
1843
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1844 ;;; @multitable ... @end multitable
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1845
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1846 ;; Produce a multi-column table, with as many columns as desired.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1847 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1848 ;; A multi-column table has this template:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1849 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1850 ;; @multitable {A1} {A2} {A3}
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1851 ;; @item A1 @tab A2 @tab A3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1852 ;; @item B1 @tab B2 @tab B3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1853 ;; @item C1 @tab C2 @tab C3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1854 ;; @end multitable
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1855 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1856 ;; where the width of the text in brackets specifies the width of the
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1857 ;; respective column.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1858 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1859 ;; Or else:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1860 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1861 ;; @multitable @columnfractions .25 .3 .45
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1862 ;; @item A1 @tab A2 @tab A3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1863 ;; @item B1 @tab B2 @tab B3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1864 ;; @end multitable
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1865 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1866 ;; where the fractions specify the width of each column as a percent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1867 ;; of the current width of the text (i.e., of the fill-column).
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1868 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1869 ;; Long lines of text are filled within columns.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1870 ;;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1871 ;; Using the Emacs Lisp formatter, texinfmt.el,
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1872 ;; the whitespace between columns can be increased by setting
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
1873 ;; `texinfo-extra-inter-column-width' to a value greater than 0. By default,
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1874 ;; there is at least one blank space between columns.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1875 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1876 ;; The Emacs Lisp formatter, texinfmt.el, ignores the following four
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1877 ;; commands that are defined in texinfo.tex for printed output.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1878 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1879 ;; @multitableparskip,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1880 ;; @multitableparindent,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1881 ;; @multitablecolmargin,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1882 ;; @multitablelinespace.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1883
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1884 ;; How @multitable works.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1885 ;; =====================
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1886 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1887 ;; `texinfo-multitable' reads the @multitable line and determines from it
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1888 ;; how wide each column should be.
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1889 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1890 ;; Also, it pushes this information, along with an identifying symbol,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1891 ;; onto the `texinfo-stack'. At the @end multitable command, the stack
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1892 ;; is checked for its matching @multitable command, and then popped, or
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1893 ;; else an error is signaled. Also, this command pushes the location of
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1894 ;; the start of the table onto the stack.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1895 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1896 ;; `texinfo-end-multitable' checks the `texinfo-stack' that the @end
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1897 ;; multitable truly is ending a corresponding beginning, and if it is,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1898 ;; pops the stack.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1899 ;;
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1900 ;; `texinfo-multitable-widths' is called by `texinfo-multitable'.
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1901 ;; The function returns a list of the widths of each column in a
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1902 ;; multi-column table, based on the information supplied by the arguments
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1903 ;; to the @multitable command (by arguments, I mean the text on the rest
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1904 ;; of the @multitable line, not the remainder of the multi-column table
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1905 ;; environment).
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1906 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1907 ;; `texinfo-multitable-item' formats a row within a multicolumn table.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1908 ;; This command is executed when texinfmt sees @item inside @multitable.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1909 ;; Cells in row are separated by `@tab's. Widths of cells are specified
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1910 ;; by the arguments in the @multitable line. Cells are filled. All cells
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1911 ;; are made to be the same height by padding their bottoms, as needed,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1912 ;; with blanks.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1913 ;;
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1914 ;; `texinfo-multitable-extract-row' is called by `texinfo-multitable-item'.
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1915 ;; This function returns the text in a multitable row, as a string.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1916 ;; The start of a row is marked by an @item and the end of row is the
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1917 ;; beginning of next @item or beginning of the @end multitable line.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1918 ;; Cells within a row are separated by @tab.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1919 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1920 ;; Note that @tab, the cell separators, are not treated as independent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1921 ;; Texinfo commands.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1922
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
1923 (defvar texinfo-extra-inter-column-width 0
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
1924 "*Number of extra spaces between entries (columns) in @multitable.")
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
1925
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
1926 (defvar texinfo-multitable-buffer-name "*multitable-temporary-buffer*")
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
1927 (defvar texinfo-multitable-rectangle-name "texinfo-multitable-temp-")
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1928
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1929 ;; These commands are defined in texinfo.tex for printed output.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1930 (put 'multitableparskip 'texinfo-format 'texinfo-discard-line-with-args)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1931 (put 'multitableparindent 'texinfo-format 'texinfo-discard-line-with-args)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1932 (put 'multitablecolmargin 'texinfo-format 'texinfo-discard-line-with-args)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1933 (put 'multitablelinespace 'texinfo-format 'texinfo-discard-line-with-args)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1934
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1935 (put 'multitable 'texinfo-format 'texinfo-multitable)
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
1936
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1937 (defun texinfo-multitable ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1938 "Produce multi-column tables.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1939
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1940 A multi-column table has this template:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1941
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1942 @multitable {A1} {A2} {A3}
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1943 @item A1 @tab A2 @tab A3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1944 @item B1 @tab B2 @tab B3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1945 @item C1 @tab C2 @tab C3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1946 @end multitable
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1947
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1948 where the width of the text in brackets specifies the width of the
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1949 respective column.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1950
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1951 Or else:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1952
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1953 @multitable @columnfractions .25 .3 .45
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1954 @item A1 @tab A2 @tab A3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1955 @item B1 @tab B2 @tab B3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1956 @end multitable
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1957
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1958 where the fractions specify the width of each column as a percent
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
1959 of the current width of the text (i.e., of the `fill-column').
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1960
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1961 Long lines of text are filled within columns.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1962
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
1963 Using the Emacs Lisp formatter, texinfmt.el,
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1964 the whitespace between columns can be increased by setting
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
1965 `texinfo-extra-inter-column-width' to a value greater than 0. By default,
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1966 there is at least one blank space between columns.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1967
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1968 The Emacs Lisp formatter, texinfmt.el, ignores the following four
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1969 commands that are defined in texinfo.tex for printed output.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1970
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1971 @multitableparskip,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1972 @multitableparindent,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1973 @multitablecolmargin,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1974 @multitablelinespace."
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1975
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1976 ;; This function pushes information onto the `texinfo-stack'.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1977 ;; A stack element consists of:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1978 ;; - type-of-command, i.e., multitable
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1979 ;; - the information about column widths, and
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1980 ;; - the position of texinfo-command-start.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1981 ;; e.g., ('multitable (1 2 3 4) 123)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1982 ;; The command line is then deleted.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1983 (texinfo-push-stack
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1984 'multitable
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1985 ;; push width information on stack
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1986 (texinfo-multitable-widths))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1987 (texinfo-discard-line-with-args))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1988
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1989 (put 'multitable 'texinfo-end 'texinfo-end-multitable)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1990 (defun texinfo-end-multitable ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1991 "Discard the @end multitable line and pop the stack of multitable."
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1992 (texinfo-discard-command)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1993 (texinfo-pop-stack 'multitable))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1994
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1995 (defun texinfo-multitable-widths ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1996 "Return list of widths of each column in a multi-column table."
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1997 (let (texinfo-multitable-width-list)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1998 ;; Fractions format:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
1999 ;; @multitable @columnfractions .25 .3 .45
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2000 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2001 ;; Template format:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2002 ;; @multitable {Column 1 template} {Column 2} {Column 3 example}
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2003 ;; Place point before first argument
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2004 (skip-chars-forward " \t")
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2005 (cond
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2006 ;; Check for common misspelling
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2007 ((looking-at "@columnfraction ")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2008 (error "In @multitable, @columnfractions misspelled"))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2009 ;; Case 1: @columnfractions .25 .3 .45
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2010 ((looking-at "@columnfractions")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2011 (forward-word 1)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2012 (while (not (eolp))
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2013 (push (truncate
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2014 (1-
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2015 (* fill-column (read (get-buffer (current-buffer))))))
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2016 texinfo-multitable-width-list)))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2017 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2018 ;; Case 2: {Column 1 template} {Column 2} {Column 3 example}
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2019 ((looking-at "{")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2020 (let ((start-of-templates (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2021 (while (not (eolp))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2022 (skip-chars-forward " \t")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2023 (let* ((start-of-template (1+ (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2024 (end-of-template
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2025 ;; forward-sexp works with braces in Texinfo mode
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2026 (progn (forward-sexp 1) (1- (point)))))
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2027 (push (- end-of-template start-of-template)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2028 texinfo-multitable-width-list)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2029 ;; Remove carriage return from within a template, if any.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2030 ;; This helps those those who want to use more than
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2031 ;; one line's worth of words in @multitable line.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2032 (narrow-to-region start-of-template end-of-template)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2033 (goto-char (point-min))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2034 (while (search-forward "
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2035 " nil t)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2036 (delete-char -1))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2037 (goto-char (point-max))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2038 (widen)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2039 (forward-char 1)))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2040 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2041 ;; Case 3: Trouble
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2042 (t
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2043 (error
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2044 "You probably need to specify column widths for @multitable correctly.")))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2045 ;; Check whether columns fit on page.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2046 (let ((desired-columns
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2047 (+
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2048 ;; between column spaces
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2049 (length texinfo-multitable-width-list)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2050 ;; additional between column spaces, if any
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
2051 texinfo-extra-inter-column-width
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2052 ;; sum of spaces for each entry
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2053 (apply '+ texinfo-multitable-width-list))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2054 (if (> desired-columns fill-column)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2055 (error
87137
1d87492bc6e0 Resolve cvs commit conflict. (Fix buggy calls to error.)
Deepak Goel <deego@gnufans.org>
parents: 86206
diff changeset
2056 "Multi-column table width, %d chars, is greater than page width, %d chars."
1d87492bc6e0 Resolve cvs commit conflict. (Fix buggy calls to error.)
Deepak Goel <deego@gnufans.org>
parents: 86206
diff changeset
2057 desired-columns fill-column)))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2058 texinfo-multitable-width-list))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2059
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2060 ;; @item A1 @tab A2 @tab A3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2061 (defun texinfo-multitable-extract-row ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2062 "Return multitable row, as a string.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2063 End of row is beginning of next @item or beginning of @end.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2064 Cells within rows are separated by @tab."
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2065 (skip-chars-forward " \t")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2066 (let* ((start (point))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2067 (end (progn
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2068 (re-search-forward "@item\\|@end")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2069 (match-beginning 0)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2070 (row (progn (goto-char end)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2071 (skip-chars-backward " ")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2072 ;; remove whitespace at end of argument
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2073 (delete-region (point) end)
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
2074 (buffer-substring-no-properties start (point)))))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2075 (delete-region texinfo-command-start end)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2076 row))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2077
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2078 (put 'multitable 'texinfo-item 'texinfo-multitable-item)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2079 (defun texinfo-multitable-item ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2080 "Format a row within a multicolumn table.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2081 Cells in row are separated by @tab.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2082 Widths of cells are specified by the arguments in the @multitable line.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2083 All cells are made to be the same height.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2084 This command is executed when texinfmt sees @item inside @multitable."
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2085 (let ((original-buffer (current-buffer))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2086 (table-widths (reverse (car (cdr (car texinfo-stack)))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2087 (existing-fill-column fill-column)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2088 start
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2089 end
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2090 (table-column 0)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2091 (table-entry-height 0)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2092 ;; unformatted row looks like: A1 @tab A2 @tab A3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2093 ;; extract-row command deletes the source line in the table.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2094 (unformated-row (texinfo-multitable-extract-row)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2095 ;; Use a temporary buffer
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
2096 (set-buffer (get-buffer-create texinfo-multitable-buffer-name))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2097 (delete-region (point-min) (point-max))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2098 (insert unformated-row)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2099 (goto-char (point-min))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2100 ;; 1. Check for correct number of @tab in line.
71675
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
2101 (let ((tab-number 1)) ; one @tab between two columns
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2102 (while (search-forward "@tab" nil t)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2103 (setq tab-number (1+ tab-number)))
71675
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
2104 (let ((needed-tabs (- (length table-widths) tab-number)))
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
2105 (when (> needed-tabs 0)
73729
581994501499 (batch-texinfo-format): Fix typo in docstring.
Juanma Barranquero <lekktu@gmail.com>
parents: 71781
diff changeset
2106 (goto-char (point-min))
71675
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
2107 (end-of-line)
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
2108 (while (> needed-tabs 0)
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
2109 (insert "@w{ }\n@tab")
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
2110 (setq needed-tabs (1- needed-tabs))
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
2111 (message
e5f36608288b * textmodes/texinfmt.el (texinfo-format-separate-node):
Robert J. Chassell <bob@rattlesnake.com>
parents: 68648
diff changeset
2112 "Added @tabs and empty spaces to a @multitable row")))))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2113 (goto-char (point-min))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2114 ;; 2. Format each cell, and copy to a rectangle
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2115 ;; buffer looks like this: A1 @tab A2 @tab A3
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2116 ;; Cell #1: format up to @tab
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2117 ;; Cell #2: format up to @tab
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2118 ;; Cell #3: format up to eob
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2119 (while (not (eobp))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2120 (setq start (point))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2121 (setq end (save-excursion
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2122 (if (search-forward "@tab" nil 'move)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2123 ;; Delete the @tab command, including the @-sign
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2124 (delete-region
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2125 (point)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2126 (progn (forward-word -1) (1- (point)))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2127 (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2128 ;; Set fill-column *wider* than needed to produce inter-column space
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2129 (setq fill-column (+ 1
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
2130 texinfo-extra-inter-column-width
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2131 (nth table-column table-widths)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2132 (narrow-to-region start end)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2133 ;; Remove whitespace before and after entry.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2134 (skip-chars-forward " ")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2135 (delete-region (point) (save-excursion (beginning-of-line) (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2136 (goto-char (point-max))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2137 (skip-chars-backward " ")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2138 (delete-region (point) (save-excursion (end-of-line) (point)))
48568
8a7dcd7fcbf7 Fix typos.
Robert J. Chassell <bob@rattlesnake.com>
parents: 48520
diff changeset
2139 ;; Temporarily set texinfo-stack to nil so texinfo-format-scan
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2140 ;; does not see an unterminated @multitable.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2141 (let (texinfo-stack) ; nil
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2142 (texinfo-format-scan))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2143 (let (fill-prefix) ; no fill prefix
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2144 (fill-region (point-min) (point-max)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2145 (setq table-entry-height
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2146 (max table-entry-height (count-lines (point-min) (point-max))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2147 ;; 3. Move point to end of bottom line, and pad that line to fill column.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2148 (goto-char (point-min))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2149 (forward-line (1- table-entry-height))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2150 (let* ((beg (point)) ; beginning of line
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2151 ;; add one more space for inter-column spacing
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2152 (needed-whitespace
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2153 (1+
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2154 (- fill-column
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2155 (-
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2156 (progn (end-of-line) (point)) ; end of existing line
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2157 beg)))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2158 (insert (make-string
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2159 (if (> needed-whitespace 0) needed-whitespace 1)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2160 ? )))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2161 ;; now, put formatted cell into a rectangle
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
2162 (set (intern (concat texinfo-multitable-rectangle-name
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2163 (int-to-string table-column)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2164 (extract-rectangle (point-min) (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2165 (delete-region (point-min) (point))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2166 (goto-char (point-max))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2167 (setq table-column (1+ table-column))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2168 (widen))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2169 ;; 4. Add extra lines to rectangles so all are of same height
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2170 (let ((total-number-of-columns table-column)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2171 (column-number 0)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2172 here)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2173 (while (> table-column 0)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2174 (let ((this-rectangle (int-to-string table-column)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2175 (while (< (length this-rectangle) table-entry-height)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2176 (setq this-rectangle (append this-rectangle '("")))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2177 (setq table-column (1- table-column)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2178 ;; 5. Insert formatted rectangles in original buffer
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2179 (switch-to-buffer original-buffer)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2180 (open-line table-entry-height)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2181 (while (< column-number total-number-of-columns)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2182 (setq here (point))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2183 (insert-rectangle
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2184 (eval (intern
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
2185 (concat texinfo-multitable-rectangle-name
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2186 (int-to-string column-number)))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2187 (goto-char here)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2188 (end-of-line)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2189 (setq column-number (1+ column-number))))
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
2190 (kill-buffer texinfo-multitable-buffer-name)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2191 (setq fill-column existing-fill-column)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2192
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2193
48794
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2194 ;;; @image
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2195 ;; Use only the FILENAME argument to the command.
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2196 ;; In Info, ignore the other arguments.
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2197
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2198 (put 'image 'texinfo-format 'texinfo-format-image)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2199 (defun texinfo-format-image ()
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2200 "Insert an image from an an file ending in .txt.
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2201 Use only the FILENAME arg; for Info, ignore the other arguments to @image."
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2202 (let ((args (texinfo-format-parse-args))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2203 filename)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2204 (when (null (nth 0 args))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2205 (error "Invalid image command"))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2206 (texinfo-discard-command)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2207 ;; makeinfo uses FILENAME.txt
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2208 (setq filename (format "%s.txt" (nth 0 args)))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2209 (message "Reading included file: %s" filename)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2210 ;; verbatim for Info output
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2211 (goto-char (+ (point) (cadr (insert-file-contents filename))))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2212 (message "Reading included file: %s...done" filename)))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2213
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2214
48697
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2215 ;;; @ifinfo, @iftex, @tex, @ifhtml, @html, @ifplaintext, @ifxml, @xml
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2216 ;; @ifnottex, @ifnotinfo, @ifnothtml, @ifnotplaintext, @ifnotxml
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2217
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2218 (put 'ifinfo 'texinfo-format 'texinfo-discard-line)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2219 (put 'ifinfo 'texinfo-end 'texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2220
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2221 (put 'iftex 'texinfo-format 'texinfo-format-iftex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2222 (defun texinfo-format-iftex ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2223 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
2224 (re-search-forward "@end iftex[ \t]*\n")))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2225
9549
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2226 (put 'ifhtml 'texinfo-format 'texinfo-format-ifhtml)
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2227 (defun texinfo-format-ifhtml ()
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2228 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
2229 (re-search-forward "@end ifhtml[ \t]*\n")))
9549
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2230
48063
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
2231 (put 'ifplaintext 'texinfo-format 'texinfo-format-ifplaintext)
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
2232 (defun texinfo-format-ifplaintext ()
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
2233 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
2234 (re-search-forward "@end ifplaintext[ \t]*\n")))
48063
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
2235
48697
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2236 (put 'ifxml 'texinfo-format 'texinfo-format-ifxml)
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2237 (defun texinfo-format-ifxml ()
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2238 (delete-region texinfo-command-start
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2239 (progn (re-search-forward "^@end ifxml[ \t]*\n")
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2240 (point))))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2241
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2242 (put 'tex 'texinfo-format 'texinfo-format-tex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2243 (defun texinfo-format-tex ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2244 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
2245 (re-search-forward "@end tex[ \t]*\n")))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2246
9549
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2247 (put 'html 'texinfo-format 'texinfo-format-html)
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2248 (defun texinfo-format-html ()
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2249 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
2250 (re-search-forward "@end html[ \t]*\n")))
9549
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2251
48697
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2252 (put 'xml 'texinfo-format 'texinfo-format-xml)
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2253 (defun texinfo-format-xml ()
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2254 (delete-region texinfo-command-start
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2255 (progn (re-search-forward "^@end xml[ \t]*\n")
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2256 (point))))
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2257
40374
fb22b0e18665 No change. Error by bob, not eliz, logging change for wrong file.
Eli Zaretskii <eliz@gnu.org>
parents: 38436
diff changeset
2258 (put 'ifnotinfo 'texinfo-format 'texinfo-format-ifnotinfo)
fb22b0e18665 No change. Error by bob, not eliz, logging change for wrong file.
Eli Zaretskii <eliz@gnu.org>
parents: 38436
diff changeset
2259 (defun texinfo-format-ifnotinfo ()
fb22b0e18665 No change. Error by bob, not eliz, logging change for wrong file.
Eli Zaretskii <eliz@gnu.org>
parents: 38436
diff changeset
2260 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
2261 (re-search-forward "@end ifnotinfo[ \t]*\n")))
40374
fb22b0e18665 No change. Error by bob, not eliz, logging change for wrong file.
Eli Zaretskii <eliz@gnu.org>
parents: 38436
diff changeset
2262
48063
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
2263 (put 'ifnotplaintext 'texinfo-format 'texinfo-discard-line)
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
2264 (put 'ifnotplaintext 'texinfo-end 'texinfo-discard-command)
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
2265
25274
de041ba369d9 Handle @ifnottex.
Karl Heuer <kwzh@gnu.org>
parents: 24792
diff changeset
2266 (put 'ifnottex 'texinfo-format 'texinfo-discard-line)
de041ba369d9 Handle @ifnottex.
Karl Heuer <kwzh@gnu.org>
parents: 24792
diff changeset
2267 (put 'ifnottex 'texinfo-end 'texinfo-discard-command)
de041ba369d9 Handle @ifnottex.
Karl Heuer <kwzh@gnu.org>
parents: 24792
diff changeset
2268
40374
fb22b0e18665 No change. Error by bob, not eliz, logging change for wrong file.
Eli Zaretskii <eliz@gnu.org>
parents: 38436
diff changeset
2269 (put 'ifnothtml 'texinfo-format 'texinfo-discard-line)
fb22b0e18665 No change. Error by bob, not eliz, logging change for wrong file.
Eli Zaretskii <eliz@gnu.org>
parents: 38436
diff changeset
2270 (put 'ifnothtml 'texinfo-end 'texinfo-discard-command)
fb22b0e18665 No change. Error by bob, not eliz, logging change for wrong file.
Eli Zaretskii <eliz@gnu.org>
parents: 38436
diff changeset
2271
48697
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2272 (put 'ifnotxml 'texinfo-format 'texinfo-discard-line)
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2273 (put 'ifnotxml 'texinfo-end 'texinfo-discard-command)
880db53196d5 (texinfo-format-scan) Handle new functions for copyright
Robert J. Chassell <bob@rattlesnake.com>
parents: 48568
diff changeset
2274
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2275
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2276 ;;; @titlepage
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2277
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2278 (put 'titlepage 'texinfo-format 'texinfo-format-titlepage)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2279 (defun texinfo-format-titlepage ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2280 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
2281 (re-search-forward "@end titlepage[ \t]*\n")))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2282
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2283 (put 'endtitlepage 'texinfo-format 'texinfo-discard-line)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2284
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2285 ;; @titlespec an alternative titling command; ignored by Info
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2286
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2287 (put 'titlespec 'texinfo-format 'texinfo-format-titlespec)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2288 (defun texinfo-format-titlespec ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2289 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
2290 (re-search-forward "@end titlespec[ \t]*\n")))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2291
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2292 (put 'endtitlespec 'texinfo-format 'texinfo-discard-line)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2293
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2294
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2295 ;;; @today
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2296
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2297 (put 'today 'texinfo-format 'texinfo-format-today)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2298
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2299 ;; Produces Day Month Year style of output. eg `1 Jan 1900'
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2300 ;; The `@today{}' command requires a pair of braces, like `@dots{}'.
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2301 (defun texinfo-format-today ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2302 (texinfo-parse-arg-discard)
15680
0f1c12e35879 (texinfo-format-today): Avoid race condition by getting current time only once.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
2303 (insert (format-time-string "%e %b %Y")))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2304
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2305
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2306 ;;; @timestamp{}
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2307 ;; Produce `Day Month Year Hour:Min' style of output.
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2308 ;; eg `1 Jan 1900 13:52'
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2309
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2310 (put 'timestamp 'texinfo-format 'texinfo-format-timestamp)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2311
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2312 ;; The `@timestamp{}' command requires a pair of braces, like `@dots{}'.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2313 (defun texinfo-format-timestamp ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2314 "Insert the current local time and date."
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2315 (texinfo-parse-arg-discard)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2316 ;; For seconds and time zone, replace format string with "%e %b %Y %T %Z"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2317 (insert (format-time-string "%e %b %Y %R")))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2318
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2319
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2320 ;;; @ignore
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2321
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2322 (put 'ignore 'texinfo-format 'texinfo-format-ignore)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2323 (defun texinfo-format-ignore ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2324 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
2325 (re-search-forward "@end ignore[ \t]*\n")))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2326
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2327 (put 'endignore 'texinfo-format 'texinfo-discard-line)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2328
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2329
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2330 ;;; Define the Info enclosure command: @definfoenclose
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2331
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2332 ;; A `@definfoenclose' command may be used to define a highlighting
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2333 ;; command for Info, but not for TeX. A command defined using
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2334 ;; `@definfoenclose' marks text by enclosing it in strings that precede
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2335 ;; and follow the text.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2336 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2337 ;; Presumably, if you define a command with `@definfoenclose` for Info,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2338 ;; you will also define the same command in the TeX definitions file,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2339 ;; `texinfo.tex' in a manner appropriate for typesetting.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2340 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2341 ;; Write a `@definfoenclose' command on a line and follow it with three
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2342 ;; arguments separated by commas (commas are used as separators in an
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2343 ;; `@node' line in the same way). The first argument to
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2344 ;; `@definfoenclose' is the @-command name \(without the `@'\); the
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2345 ;; second argument is the Info start delimiter string; and the third
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2346 ;; argument is the Info end delimiter string. The latter two arguments
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2347 ;; enclose the highlighted text in the Info file. A delimiter string
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2348 ;; may contain spaces. Neither the start nor end delimiter is
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2349 ;; required. However, if you do not provide a start delimiter, you
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2350 ;; must follow the command name with two commas in a row; otherwise,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2351 ;; the Info formatting commands will misinterpret the end delimiter
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2352 ;; string as a start delimiter string.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2353 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2354 ;; If you do a @definfoenclose{} on the name of a pre-defined macro (such
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2355 ;; as @emph{}, @strong{}, @tt{}, or @i{}) the enclosure definition will
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2356 ;; override the built-in definition.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2357 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2358 ;; An enclosure command defined this way takes one argument in braces.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2359 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2360 ;; For example, you can write:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2361 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2362 ;; @ifinfo
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2363 ;; @definfoenclose phoo, //, \\
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2364 ;; @end ifinfo
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2365 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2366 ;; near the beginning of a Texinfo file at the beginning of the lines
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2367 ;; to define `@phoo' as an Info formatting command that inserts `//'
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2368 ;; before and `\\' after the argument to `@phoo'. You can then write
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2369 ;; `@phoo{bar}' wherever you want `//bar\\' highlighted in Info.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2370 ;;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2371 ;; Also, for TeX formatting, you could write
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2372 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2373 ;; @iftex
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2374 ;; @global@let@phoo=@i
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2375 ;; @end iftex
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2376 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2377 ;; to define `@phoo' as a command that causes TeX to typeset
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2378 ;; the argument to `@phoo' in italics.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2379 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2380 ;; Note that each definition applies to its own formatter: one for TeX,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2381 ;; the other for texinfo-format-buffer or texinfo-format-region.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2382 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2383 ;; Here is another example: write
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2384 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2385 ;; @definfoenclose headword, , :
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2386 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2387 ;; near the beginning of the file, to define `@headword' as an Info
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2388 ;; formatting command that inserts nothing before and a colon after the
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2389 ;; argument to `@headword'.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2390
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2391 (put 'definfoenclose 'texinfo-format 'texinfo-define-info-enclosure)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2392 (defun texinfo-define-info-enclosure ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2393 (let* ((args (texinfo-format-parse-line-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2394 (command-name (nth 0 args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2395 (beginning-delimiter (or (nth 1 args) ""))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2396 (end-delimiter (or (nth 2 args) "")))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2397 (texinfo-discard-command)
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2398 (push (list command-name
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2399 (list
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2400 beginning-delimiter
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2401 end-delimiter))
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2402 texinfo-enclosure-list)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2403
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2404
24314
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2405 ;;; @alias
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2406
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2407 (put 'alias 'texinfo-format 'texinfo-alias)
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2408 (defun texinfo-alias ()
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2409 (let ((start (1- (point)))
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2410 args)
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2411 (skip-chars-forward " ")
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2412 (save-excursion (end-of-line) (setq texinfo-command-end (point)))
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2413 (if (not (looking-at "\\([^=]+\\)=\\(.*\\)"))
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2414 (error "Invalid alias command")
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2415 (push (cons
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2416 (match-string-no-properties 1)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2417 (match-string-no-properties 2))
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2418 texinfo-alias-list)
24314
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2419 (texinfo-discard-command))
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2420 )
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2421 )
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2422
96aef9174003 (texinfo-alias): New function.
Richard M. Stallman <rms@gnu.org>
parents: 23658
diff changeset
2423
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2424 ;;; @var, @code and the like
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2425
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2426 (put 'var 'texinfo-format 'texinfo-format-var)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2427 ;; @sc a small caps font for TeX; formatted as `var' in Info
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2428 (put 'sc 'texinfo-format 'texinfo-format-var)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2429 ;; @acronym for abbreviations in all caps, such as `NASA'.
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2430 ;; Convert all letters to uppercase if they are not already.
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2431 (put 'acronym 'texinfo-format 'texinfo-format-var)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2432 (defun texinfo-format-var ()
24750
ea9b449cc742 (texinfo-format-var): Handle other nested constructs, using
Richard M. Stallman <rms@gnu.org>
parents: 24745
diff changeset
2433 (let ((arg (texinfo-parse-expanded-arg)))
ea9b449cc742 (texinfo-format-var): Handle other nested constructs, using
Richard M. Stallman <rms@gnu.org>
parents: 24745
diff changeset
2434 (texinfo-discard-command)
ea9b449cc742 (texinfo-format-var): Handle other nested constructs, using
Richard M. Stallman <rms@gnu.org>
parents: 24745
diff changeset
2435 (insert (upcase arg))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2436
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2437 (put 'cite 'texinfo-format 'texinfo-format-code)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2438 (put 'code 'texinfo-format 'texinfo-format-code)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2439 ;; @command (for command names)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2440 (put 'command 'texinfo-format 'texinfo-format-code)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2441 ;; @env (for environment variables)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2442 (put 'env 'texinfo-format 'texinfo-format-code)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2443 (put 'file 'texinfo-format 'texinfo-format-code)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2444 (put 'samp 'texinfo-format 'texinfo-format-code)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2445 (put 'url 'texinfo-format 'texinfo-format-code)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2446 (defun texinfo-format-code ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2447 (insert "`" (texinfo-parse-arg-discard) "'")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2448 (goto-char texinfo-command-start))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2449
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2450 ;; @option (for command-line options) must be different from @code
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2451 ;; because of its special formatting in @table; namely that it does
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2452 ;; not lead to inserted ` ... ' in a table, but does elsewhere.
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2453 (put 'option 'texinfo-format 'texinfo-format-option)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2454 (defun texinfo-format-option ()
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2455 "Insert ` ... ' around arg unless inside a table; in that case, no quotes."
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2456 ;; `looking-at-backward' not available in v. 18.57, 20.2
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2457 (if (not (search-backward "" ; searched-for character is a control-H
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2458 (save-excursion (beginning-of-line) (point))
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2459 t))
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2460 (insert "`" (texinfo-parse-arg-discard) "'")
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2461 (insert (texinfo-parse-arg-discard)))
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2462 (goto-char texinfo-command-start))
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2463
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2464 (put 'emph 'texinfo-format 'texinfo-format-emph)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2465 (put 'strong 'texinfo-format 'texinfo-format-emph)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2466 (defun texinfo-format-emph ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2467 (insert "*" (texinfo-parse-arg-discard) "*")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2468 (goto-char texinfo-command-start))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2469
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2470 (put 'dfn 'texinfo-format 'texinfo-format-defn)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2471 (put 'defn 'texinfo-format 'texinfo-format-defn)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2472 (defun texinfo-format-defn ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2473 (insert "\"" (texinfo-parse-arg-discard) "\"")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2474 (goto-char texinfo-command-start))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2475
37538
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2476 (put 'email 'texinfo-format 'texinfo-format-email)
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2477 (defun texinfo-format-email ()
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2478 "Format email address and optional following full name.
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2479 Insert full name, if present, followed by email address
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2480 surrounded by in angle brackets."
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2481 (let ((args (texinfo-format-parse-args)))
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2482 (texinfo-discard-command)
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2483 ;; if full-name
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2484 (if (nth 1 args)
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2485 (insert (nth 1 args) " "))
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2486 (insert "<" (nth 0 args) ">")))
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2487
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2488 (put 'key 'texinfo-format 'texinfo-format-key)
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
2489 ;; I've decided not want to have angle brackets around these -- rms.
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2490 (defun texinfo-format-key ()
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
2491 (insert (texinfo-parse-arg-discard))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2492 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2493
48794
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2494 ;; @verb{<char>TEXT<char>} (in `makeinfo' 4.1 and later)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2495 (put 'verb 'texinfo-format 'texinfo-format-verb)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2496 (defun texinfo-format-verb ()
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2497 "Format text between non-quoted unique delimiter characters verbatim.
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2498 Enclose the verbatim text, including the delimiters, in braces. Print
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2499 text exactly as written (but not the delimiters) in a fixed-width.
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2500
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2501 For example, @verb\{|@|\} results in @ and
48794
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2502 @verb\{+@'e?`!`+} results in @'e?`!`."
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2503
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2504 (let ((delimiter (buffer-substring-no-properties
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2505 (1+ texinfo-command-end) (+ 2 texinfo-command-end))))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2506 (unless (looking-at "{")
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2507 (error "Not found: @verb start brace"))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2508 (delete-region texinfo-command-start (+ 2 texinfo-command-end))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2509 (search-forward delimiter))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2510 (delete-backward-char 1)
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2511 (unless (looking-at "}")
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2512 (error "Not found: @verb end brace"))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2513 (delete-char 1))
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2514
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2515 ;; as of 2002 Dec 10
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2516 ;; see (texinfo)Block Enclosing Commands
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2517 ;; need: @verbatim
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2518
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2519 ;; as of 2002 Dec 10
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2520 ;; see (texinfo)verbatiminclude
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2521 ;; need: @verbatiminclude FILENAME
837d37faadcf Installed on behalf of TAKAHASHI Kaoru <kaoru@kaisei.org>
Robert J. Chassell <bob@rattlesnake.com>
parents: 48755
diff changeset
2522
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2523 (put 'bullet 'texinfo-format 'texinfo-format-bullet)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2524 (defun texinfo-format-bullet ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2525 "Insert an asterisk.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2526 If used within a line, follow `@bullet' with braces."
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2527 (texinfo-optional-braces-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2528 (insert "*"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2529
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2530
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2531 ;;; @kbd
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2532
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2533 ;; Inside of @example ... @end example and similar environments,
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2534 ;; @kbd does nothing; but outside of such environments, it places
48568
8a7dcd7fcbf7 Fix typos.
Robert J. Chassell <bob@rattlesnake.com>
parents: 48520
diff changeset
2535 ;; single quotation marks around its argument.
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2536
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2537 (defvar texinfo-format-kbd-regexp
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2538 (concat
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2539 "^@"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2540 "\\("
37538
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2541 "display\\|"
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2542 "example\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2543 "smallexample\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2544 "lisp\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2545 "smalllisp"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2546 "\\)")
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2547 "Regexp matching environments in which @kbd does not put `...' around arg.")
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2548
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2549 (defvar texinfo-format-kbd-end-regexp
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2550 (concat
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2551 "^@end "
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2552 "\\("
37538
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
2553 "display\\|"
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2554 "example\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2555 "smallexample\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2556 "lisp\\|"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2557 "smalllisp"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2558 "\\)")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2559 "Regexp specifying end of environments in which @kbd does not put `...'
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2560 around argument. (See `texinfo-format-kbd-regexp')")
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2561
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2562 (put 'kbd 'texinfo-format 'texinfo-format-kbd)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2563 (defun texinfo-format-kbd ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2564 "Place single quote marks around arg, except in @example and similar."
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2565 ;; Search forward for @end example closer than an @example.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2566 ;; Can stop search at nearest @node or texinfo-section-types-regexp
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2567 (let* ((stop
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2568 (save-excursion
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2569 (re-search-forward
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2570 (concat "^@node\\|\\(" texinfo-section-types-regexp "\\)")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2571 nil
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2572 'move-to-end) ; if necessary, return point at end of buffer
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2573 (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2574 (example-location
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2575 (save-excursion
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2576 (re-search-forward texinfo-format-kbd-regexp stop 'move-to-end)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2577 (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2578 (end-example-location
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2579 (save-excursion
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2580 (re-search-forward texinfo-format-kbd-end-regexp stop 'move-to-end)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2581 (point))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2582 ;; If inside @example, @end example will be closer than @example
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2583 ;; or end of search i.e., end-example-location less than example-location
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2584 (if (>= end-example-location example-location)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2585 ;; outside an @example or equivalent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2586 (insert "`" (texinfo-parse-arg-discard) "'")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2587 ;; else, in @example; do not surround with `...'
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2588 (insert (texinfo-parse-arg-discard)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2589 (goto-char texinfo-command-start)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2590
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2591
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2592 ;;; @example, @lisp, @quotation, @display, @smalllisp, @smallexample,
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2593 ;; @smalldisplay
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2594
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2595 (put 'display 'texinfo-format 'texinfo-format-example)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2596 (put 'smalldisplay 'texinfo-format 'texinfo-format-example)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2597 (put 'example 'texinfo-format 'texinfo-format-example)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2598 (put 'lisp 'texinfo-format 'texinfo-format-example)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2599 (put 'quotation 'texinfo-format 'texinfo-format-example)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2600 (put 'smallexample 'texinfo-format 'texinfo-format-example)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2601 (put 'smalllisp 'texinfo-format 'texinfo-format-example)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2602 (defun texinfo-format-example ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2603 (texinfo-push-stack 'example nil)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2604 (setq fill-column (- fill-column 5))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2605 (texinfo-discard-line))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2606
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2607 (put 'example 'texinfo-end 'texinfo-end-example)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2608 (put 'display 'texinfo-end 'texinfo-end-example)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2609 (put 'smalldisplay 'texinfo-end 'texinfo-end-example)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2610 (put 'lisp 'texinfo-end 'texinfo-end-example)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2611 (put 'quotation 'texinfo-end 'texinfo-end-example)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2612 (put 'smallexample 'texinfo-end 'texinfo-end-example)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2613 (put 'smalllisp 'texinfo-end 'texinfo-end-example)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2614 (defun texinfo-end-example ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2615 (setq fill-column (+ fill-column 5))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2616 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2617 (let ((stacktop
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2618 (texinfo-pop-stack 'example)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2619 (texinfo-do-itemize (nth 1 stacktop))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2620
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2621 (put 'exdent 'texinfo-format 'texinfo-format-exdent)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2622 (defun texinfo-format-exdent ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2623 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2624 (delete-region (point)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2625 (progn
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2626 (skip-chars-forward " ")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2627 (point)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2628 (insert ?\b)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2629 ;; Cancel out the deletion that texinfo-do-itemize
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2630 ;; is going to do at the end of this line.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2631 (save-excursion
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2632 (end-of-line)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2633 (insert "\n ")))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2634
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2635
18884
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2636 ;; @direntry and @dircategory
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2637
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2638 (put 'direntry 'texinfo-format 'texinfo-format-direntry)
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2639 (defun texinfo-format-direntry ()
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2640 (texinfo-push-stack 'direntry nil)
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2641 (texinfo-discard-line)
24792
c4e546aa9dd5 (texinfo-format-direntry): Avoid blank line.
Karl Heuer <kwzh@gnu.org>
parents: 24750
diff changeset
2642 (insert "START-INFO-DIR-ENTRY\n"))
18884
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2643
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2644 (put 'direntry 'texinfo-end 'texinfo-end-direntry)
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2645 (defun texinfo-end-direntry ()
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2646 (texinfo-discard-command)
18908
a5e6856e865e (dircategory): Delete obsolete mistaken `put'.
Richard M. Stallman <rms@gnu.org>
parents: 18884
diff changeset
2647 (insert "END-INFO-DIR-ENTRY\n\n")
18884
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2648 (texinfo-pop-stack 'direntry))
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2649
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2650 (put 'dircategory 'texinfo-format 'texinfo-format-dircategory)
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2651 (defun texinfo-format-dircategory ()
18908
a5e6856e865e (dircategory): Delete obsolete mistaken `put'.
Richard M. Stallman <rms@gnu.org>
parents: 18884
diff changeset
2652 (let ((str (texinfo-parse-arg-discard)))
a5e6856e865e (dircategory): Delete obsolete mistaken `put'.
Richard M. Stallman <rms@gnu.org>
parents: 18884
diff changeset
2653 (delete-region (point)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2654 (progn
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2655 (skip-chars-forward " ")
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2656 (point)))
18908
a5e6856e865e (dircategory): Delete obsolete mistaken `put'.
Richard M. Stallman <rms@gnu.org>
parents: 18884
diff changeset
2657 (insert "INFO-DIR-SECTION " str "\n")))
18884
04d36f3e7fa6 (texinfo-no-refill-regexp): Add "direntry".
Richard M. Stallman <rms@gnu.org>
parents: 18818
diff changeset
2658
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2659 ;;; @cartouche
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2660
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2661 ;; The @cartouche command is a noop in Info; in a printed manual,
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2662 ;; it makes a box with rounded corners.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2663
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2664 (put 'cartouche 'texinfo-format 'texinfo-discard-line)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2665 (put 'cartouche 'texinfo-end 'texinfo-discard-command)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2666
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2667
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2668 ;;; @flushleft and @format
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2669
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2670 ;; The @flushleft command left justifies every line but leaves the
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2671 ;; right end ragged. As far as Info is concerned, @flushleft is a
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2672 ;; `do-nothing' command
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2673
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2674 ;; The @format command is similar to @example except that it does not
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2675 ;; indent; this means that in Info, @format is similar to @flushleft.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2676
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2677 (put 'format 'texinfo-format 'texinfo-format-flushleft)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2678 (put 'smallformat 'texinfo-format 'texinfo-format-flushleft)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2679 (put 'flushleft 'texinfo-format 'texinfo-format-flushleft)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2680 (defun texinfo-format-flushleft ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2681 (texinfo-discard-line))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2682
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2683 (put 'format 'texinfo-end 'texinfo-end-flushleft)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
2684 (put 'smallformat 'texinfo-end 'texinfo-end-flushleft)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2685 (put 'flushleft 'texinfo-end 'texinfo-end-flushleft)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2686 (defun texinfo-end-flushleft ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2687 (texinfo-discard-command))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2688
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2689
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2690 ;;; @flushright
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2691
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2692 ;; The @flushright command right justifies every line but leaves the
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2693 ;; left end ragged. Spaces and tabs at the right ends of lines are
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2694 ;; removed so that visible text lines up on the right side.
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2695
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2696 (put 'flushright 'texinfo-format 'texinfo-format-flushright)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2697 (defun texinfo-format-flushright ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2698 (texinfo-push-stack 'flushright nil)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2699 (texinfo-discard-line))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2700
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2701 (put 'flushright 'texinfo-end 'texinfo-end-flushright)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2702 (defun texinfo-end-flushright ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2703 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2704
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2705 (let ((stacktop
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2706 (texinfo-pop-stack 'flushright)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2707
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2708 (texinfo-do-flushright (nth 1 stacktop))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2709
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2710 (defun texinfo-do-flushright (from)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2711 (save-excursion
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2712 (while (progn (forward-line -1)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2713 (>= (point) from))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2714
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2715 (beginning-of-line)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2716 (insert
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2717 (make-string
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2718 (- fill-column
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2719 (save-excursion
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2720 (end-of-line)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2721 (skip-chars-backward " \t")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2722 (delete-region (point) (progn (end-of-line) (point)))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2723 (current-column)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2724 ? )))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2725
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2726
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2727 ;;; @ctrl, @TeX, @copyright, @minus, @dots, @enddots, @pounds
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2728
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2729 (put 'ctrl 'texinfo-format 'texinfo-format-ctrl)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2730 (defun texinfo-format-ctrl ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2731 (let ((str (texinfo-parse-arg-discard)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2732 (insert (logand 31 (aref str 0)))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2733
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2734 (put 'TeX 'texinfo-format 'texinfo-format-TeX)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2735 (defun texinfo-format-TeX ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2736 (texinfo-parse-arg-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2737 (insert "TeX"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2738
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2739 (put 'copyright 'texinfo-format 'texinfo-format-copyright)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2740 (defun texinfo-format-copyright ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2741 (texinfo-parse-arg-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2742 (insert "(C)"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2743
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2744 (put 'minus 'texinfo-format 'texinfo-format-minus)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2745 (defun texinfo-format-minus ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2746 "Insert a minus sign.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2747 If used within a line, follow `@minus' with braces."
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2748 (texinfo-optional-braces-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2749 (insert "-"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2750
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2751 (put 'dots 'texinfo-format 'texinfo-format-dots)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2752 (defun texinfo-format-dots ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2753 (texinfo-parse-arg-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2754 (insert "..."))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2755
9549
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2756 (put 'enddots 'texinfo-format 'texinfo-format-enddots)
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2757 (defun texinfo-format-enddots ()
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2758 (texinfo-parse-arg-discard)
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2759 (insert "...."))
1de7e5bc1ff1 (texinfo-no-refill-regexp): Recognize @ifhtml, @html.
Richard M. Stallman <rms@gnu.org>
parents: 9344
diff changeset
2760
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2761 (put 'pounds 'texinfo-format 'texinfo-format-pounds)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2762 (defun texinfo-format-pounds ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2763 (texinfo-parse-arg-discard)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2764 (insert "#"))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2765
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2766
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2767 ;;; Refilling and indenting: @refill, @paragraphindent, @noindent
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2768
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2769 ;; Indent only those paragraphs that are refilled as a result of an
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2770 ;; @refill command.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2771
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2772 ;; * If the value is `asis', do not change the existing indentation at
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2773 ;; the starts of paragraphs.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2774
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2775 ;; * If the value zero, delete any existing indentation.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2776
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2777 ;; * If the value is greater than zero, indent each paragraph by that
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
2778 ;; number of spaces.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2779
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2780 ;; But do not refill paragraphs with an @refill command that are
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2781 ;; preceded by @noindent or are part of a table, list, or deffn.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2782
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2783 (defvar texinfo-paragraph-indent "asis"
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2784 "Number of spaces for @refill to indent a paragraph; else to leave as is.")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2785
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2786 (put 'paragraphindent 'texinfo-format 'texinfo-paragraphindent)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2787
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2788 (defun texinfo-paragraphindent ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2789 "Specify the number of spaces for @refill to indent a paragraph.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2790 Default is to leave the number of spaces as is."
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2791 (let ((arg (texinfo-parse-arg-discard)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2792 (if (string= "asis" arg)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2793 (setq texinfo-paragraph-indent "asis")
62402
a7e02ef1e3d6 Replace `string-to-int' by `string-to-number'.
Juanma Barranquero <lekktu@gmail.com>
parents: 60372
diff changeset
2794 (setq texinfo-paragraph-indent (string-to-number arg)))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2795
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2796 (put 'refill 'texinfo-format 'texinfo-format-refill)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2797 (defun texinfo-format-refill ()
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2798 "Refill paragraph. Also, indent first line as set by @paragraphindent.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2799 Default is to leave paragraph indentation as is."
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2800 (texinfo-discard-command)
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2801 (let ((position (point-marker)))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2802 (forward-paragraph -1)
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2803 (if (looking-at "[ \t\n]*$") (forward-line 1))
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2804 ;; Do not indent if an entry in a list, table, or deffn,
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2805 ;; or if paragraph is preceded by @noindent.
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2806 ;; Otherwise, indent
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2807 (cond
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2808 ;; delete a @noindent line and do not indent paragraph
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2809 ((save-excursion (forward-line -1)
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2810 (looking-at "^@noindent"))
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2811 (forward-line -1)
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2812 (delete-region (point) (progn (forward-line 1) (point))))
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2813 ;; do nothing if "asis"
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2814 ((equal texinfo-paragraph-indent "asis"))
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2815 ;; do no indenting in list, etc.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2816 ((> texinfo-stack-depth 0))
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2817 ;; otherwise delete existing whitespace and indent
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2818 (t
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2819 (delete-region (point) (progn (skip-chars-forward " \t") (point)))
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2820 (insert (make-string texinfo-paragraph-indent ? ))))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2821 (forward-paragraph 1)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2822 (forward-line -1)
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2823 (end-of-line)
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2824 ;; Do not fill a section title line with asterisks, hyphens, etc. that
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2825 ;; are used to underline it. This could occur if the line following
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2826 ;; the underlining is not an index entry and has text within it.
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2827 (let* ((previous-paragraph-separate paragraph-separate)
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2828 (paragraph-separate
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2829 (concat paragraph-separate "\\|[-=.]+\\|\\*\\*+"))
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2830 (previous-paragraph-start paragraph-start)
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2831 (paragraph-start
23658
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2832 (concat paragraph-start "\\|[-=.]+\\|\\*\\*+")))
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2833 (unwind-protect
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2834 (fill-paragraph nil)
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2835 (setq paragraph-separate previous-paragraph-separate)
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2836 (setq paragraph-start previous-paragraph-start)))
ac6928a654e1 (texinfo-format-scan):
Karl Heuer <kwzh@gnu.org>
parents: 22695
diff changeset
2837 (goto-char position)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2838
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2839 (put 'noindent 'texinfo-format 'texinfo-noindent)
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2840 (defun texinfo-noindent ()
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2841 (save-excursion
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2842 (forward-paragraph 1)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2843 (if (search-backward "@refill"
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2844 (save-excursion (forward-line -1) (point)) t)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2845 () ; leave @noindent command so @refill command knows not to indent
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2846 ;; else
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2847 (texinfo-discard-line))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2848
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2849
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2850 ;;; Index generation
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2851
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2852 (put 'vindex 'texinfo-format 'texinfo-format-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2853 (defun texinfo-format-vindex ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2854 (texinfo-index 'texinfo-vindex))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2855
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2856 (put 'cindex 'texinfo-format 'texinfo-format-cindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2857 (defun texinfo-format-cindex ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2858 (texinfo-index 'texinfo-cindex))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2859
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2860 (put 'findex 'texinfo-format 'texinfo-format-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2861 (defun texinfo-format-findex ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2862 (texinfo-index 'texinfo-findex))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2863
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2864 (put 'pindex 'texinfo-format 'texinfo-format-pindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2865 (defun texinfo-format-pindex ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2866 (texinfo-index 'texinfo-pindex))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2867
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2868 (put 'tindex 'texinfo-format 'texinfo-format-tindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2869 (defun texinfo-format-tindex ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2870 (texinfo-index 'texinfo-tindex))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2871
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2872 (put 'kindex 'texinfo-format 'texinfo-format-kindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2873 (defun texinfo-format-kindex ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2874 (texinfo-index 'texinfo-kindex))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2875
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2876 (defun texinfo-index (indexvar)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2877 (let ((arg (texinfo-parse-expanded-arg)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2878 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2879 (set indexvar
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2880 (cons (list arg
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2881 texinfo-last-node
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2882 ;; Region formatting may not provide last node position.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2883 (if texinfo-last-node-pos
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2884 (1+ (count-lines texinfo-last-node-pos (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2885 1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2886 (symbol-value indexvar)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2887
55770
f813d67d717a (texinfo-indexvar-alist): Declare as variable instead of constant.
John Paul Wallington <jpw@pobox.com>
parents: 55752
diff changeset
2888 (defvar texinfo-indexvar-alist
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2889 '(("cp" . texinfo-cindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2890 ("fn" . texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2891 ("vr" . texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2892 ("tp" . texinfo-tindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2893 ("pg" . texinfo-pindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2894 ("ky" . texinfo-kindex)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2895
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2896
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2897 ;;; @defindex @defcodeindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2898 (put 'defindex 'texinfo-format 'texinfo-format-defindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2899 (put 'defcodeindex 'texinfo-format 'texinfo-format-defindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2900
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2901 (defun texinfo-format-defindex ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2902 (let* ((index-name (texinfo-parse-arg-discard)) ; eg: `aa'
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2903 (indexing-command (intern (concat index-name "index")))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2904 (index-formatting-command ; eg: `texinfo-format-aaindex'
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2905 (intern (concat "texinfo-format-" index-name "index")))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2906 (index-alist-name ; eg: `texinfo-aaindex'
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2907 (intern (concat "texinfo-" index-name "index"))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2908
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2909 (set index-alist-name nil)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2910
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2911 (put indexing-command ; eg, aaindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2912 'texinfo-format
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2913 index-formatting-command) ; eg, texinfo-format-aaindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2914
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2915 ;; eg: "aa" . texinfo-aaindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2916 (or (assoc index-name texinfo-indexvar-alist)
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2917 (push (cons index-name
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2918 index-alist-name)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
2919 texinfo-indexvar-alist))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2920
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2921 (fset index-formatting-command
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2922 (list 'lambda 'nil
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
2923 (list 'texinfo-index
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2924 (list 'quote index-alist-name))))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2925
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2926
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2927 ;;; @synindex @syncodeindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2928
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2929 (put 'synindex 'texinfo-format 'texinfo-format-synindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2930 (put 'syncodeindex 'texinfo-format 'texinfo-format-synindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2931
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2932 (defun texinfo-format-synindex ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2933 (let* ((args (texinfo-parse-arg-discard))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2934 (second (cdr (read-from-string args)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2935 (joiner (symbol-name (car (read-from-string args))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2936 (joined (symbol-name (car (read-from-string args second)))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2937
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2938 (if (assoc joiner texinfo-short-index-cmds-alist)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2939 (put
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2940 (cdr (assoc joiner texinfo-short-index-cmds-alist))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2941 'texinfo-format
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2942 (or (cdr (assoc joined texinfo-short-index-format-cmds-alist))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2943 (intern (concat "texinfo-format-" joined "index"))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2944 (put
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2945 (intern (concat joiner "index"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2946 'texinfo-format
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2947 (or (cdr(assoc joined texinfo-short-index-format-cmds-alist))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2948 (intern (concat "texinfo-format-" joined "index")))))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2949
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2950 (defconst texinfo-short-index-cmds-alist
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2951 '(("cp" . cindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2952 ("fn" . findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2953 ("vr" . vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2954 ("tp" . tindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2955 ("pg" . pindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2956 ("ky" . kindex)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2957
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2958 (defconst texinfo-short-index-format-cmds-alist
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2959 '(("cp" . texinfo-format-cindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2960 ("fn" . texinfo-format-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2961 ("vr" . texinfo-format-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2962 ("tp" . texinfo-format-tindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2963 ("pg" . texinfo-format-pindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2964 ("ky" . texinfo-format-kindex)))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2965
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2966
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2967 ;;; @printindex
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2968
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2969 (put 'printindex 'texinfo-format 'texinfo-format-printindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2970
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2971 (defun texinfo-format-printindex ()
86206
2abbcd7bdb21 (texinfo-format-printindex): Collect combined indexes
Juri Linkov <juri@jurta.org>
parents: 82907
diff changeset
2972 (let* ((arg (texinfo-parse-arg-discard))
2abbcd7bdb21 (texinfo-format-printindex): Collect combined indexes
Juri Linkov <juri@jurta.org>
parents: 82907
diff changeset
2973 (fmt (cdr (assoc arg texinfo-short-index-format-cmds-alist)))
2abbcd7bdb21 (texinfo-format-printindex): Collect combined indexes
Juri Linkov <juri@jurta.org>
parents: 82907
diff changeset
2974 (index-list (delq nil (mapcar (lambda (e)
2abbcd7bdb21 (texinfo-format-printindex): Collect combined indexes
Juri Linkov <juri@jurta.org>
parents: 82907
diff changeset
2975 (and (eq fmt (get (cdr e) 'texinfo-format))
2abbcd7bdb21 (texinfo-format-printindex): Collect combined indexes
Juri Linkov <juri@jurta.org>
parents: 82907
diff changeset
2976 (cdr (assoc (car e) texinfo-indexvar-alist))))
2abbcd7bdb21 (texinfo-format-printindex): Collect combined indexes
Juri Linkov <juri@jurta.org>
parents: 82907
diff changeset
2977 texinfo-short-index-cmds-alist)))
2abbcd7bdb21 (texinfo-format-printindex): Collect combined indexes
Juri Linkov <juri@jurta.org>
parents: 82907
diff changeset
2978 (indexelts (apply #'append nil (mapcar #'symbol-value index-list)))
2abbcd7bdb21 (texinfo-format-printindex): Collect combined indexes
Juri Linkov <juri@jurta.org>
parents: 82907
diff changeset
2979 opoint)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2980 (insert "\n* Menu:\n\n")
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2981 (setq opoint (point))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2982 (texinfo-print-index nil indexelts)
97142
c3512b2085a0 * bitmaps/README:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 94670
diff changeset
2983 (shell-command-on-region opoint (point) "sort -fd" 1)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2984
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2985 (defun texinfo-print-index (file indexelts)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2986 (while indexelts
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
2987 (if (stringp (car (car indexelts)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2988 (progn
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2989 (insert "* " (car (car indexelts)) ": " )
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2990 (indent-to 32)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2991 (insert
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2992 (if file (concat "(" file ")") "")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2993 (nth 1 (car indexelts)) ".")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2994 (indent-to 54)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2995 (insert
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2996 (if (nth 2 (car indexelts))
55752
a7f7c0fa52a6 (texinfo-print-index): Print index line numbers in the new Texinfo 4.7 format.
Juri Linkov <juri@jurta.org>
parents: 52969
diff changeset
2997 (format " (line %3d)" (1+ (nth 2 (car indexelts))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2998 "")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
2999 "\n"))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3000 ;; index entries from @include'd file
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3001 (texinfo-print-index (nth 1 (car indexelts))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3002 (nth 2 (car indexelts))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3003 (setq indexelts (cdr indexelts))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3004
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3005
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3006 ;;; Glyphs: @equiv, @error, etc
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3007
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3008 ;; @equiv to show that two expressions are equivalent
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3009 ;; @error to show an error message
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3010 ;; @expansion to show what a macro expands to
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3011 ;; @point to show the location of point in an example
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3012 ;; @print to show what an evaluated expression prints
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3013 ;; @result to indicate the value returned by an expression
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3014
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3015 (put 'equiv 'texinfo-format 'texinfo-format-equiv)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3016 (defun texinfo-format-equiv ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3017 (texinfo-parse-arg-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3018 (insert "=="))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3019
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3020 (put 'error 'texinfo-format 'texinfo-format-error)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3021 (defun texinfo-format-error ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3022 (texinfo-parse-arg-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3023 (insert "error-->"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3024
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3025 (put 'expansion 'texinfo-format 'texinfo-format-expansion)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3026 (defun texinfo-format-expansion ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3027 (texinfo-parse-arg-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3028 (insert "==>"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3029
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3030 (put 'point 'texinfo-format 'texinfo-format-point)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3031 (defun texinfo-format-point ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3032 (texinfo-parse-arg-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3033 (insert "-!-"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3034
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3035 (put 'print 'texinfo-format 'texinfo-format-print)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3036 (defun texinfo-format-print ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3037 (texinfo-parse-arg-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3038 (insert "-|"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3039
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3040 (put 'result 'texinfo-format 'texinfo-format-result)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3041 (defun texinfo-format-result ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3042 (texinfo-parse-arg-discard)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3043 (insert "=>"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3044
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3045
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3046 ;;; Accent commands
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3047
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3048 ;; Info presumes a plain ASCII output, so the accented characters do
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3049 ;; not look as they would if typeset, or output with a different
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3050 ;; character set.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3051
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3052 ;; See the `texinfo-accent-commands' variable
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3053 ;; in the section for `texinfo-append-refill'.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3054 ;; Also, see the defun for `texinfo-format-scan'
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3055 ;; for single-character accent commands.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3056
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3057 ;; Command Info output Name
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3058
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3059 ;; These do not have braces:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3060 ;; @^ ==> ^ circumflex accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3061 ;; @` ==> ` grave accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3062 ;; @' ==> ' acute accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3063 ;; @" ==> " umlaut accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3064 ;; @= ==> = overbar accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3065 ;; @~ ==> ~ tilde accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3066
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3067 ;; These have braces, but take no argument:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3068 ;; @OE{} ==> OE French-OE-ligature
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3069 ;; @oe{} ==> oe
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3070 ;; @AA{} ==> AA Scandinavian-A-with-circle
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3071 ;; @aa{} ==> aa
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3072 ;; @AE{} ==> AE Latin-Scandinavian-AE
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3073 ;; @ae{} ==> ae
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3074 ;; @ss{} ==> ss German-sharp-S
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3075
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3076 ;; @questiondown{} ==> ? upside-down-question-mark
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3077 ;; @exclamdown{} ==> ! upside-down-exclamation-mark
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3078 ;; @L{} ==> L/ Polish suppressed-L (Lslash)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3079 ;; @l{} ==> l/ Polish suppressed-L (Lslash) (lower case)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3080 ;; @O{} ==> O/ Scandinavian O-with-slash
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3081 ;; @o{} ==> o/ Scandinavian O-with-slash (lower case)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3082
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3083 ;; These have braces, and take an argument:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3084 ;; @,{c} ==> c, cedilla accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3085 ;; @dotaccent{o} ==> .o overdot-accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3086 ;; @ubaraccent{o} ==> _o underbar-accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3087 ;; @udotaccent{o} ==> o-. underdot-accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3088 ;; @H{o} ==> ""o long Hungarian umlaut
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3089 ;; @ringaccent{o} ==> *o ring accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3090 ;; @tieaccent{oo} ==> [oo tie after accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3091 ;; @u{o} ==> (o breve accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3092 ;; @v{o} ==> <o hacek accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3093 ;; @dotless{i} ==> i dotless i and dotless j
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3094
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3095 ;; ==========
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3096
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3097 ;; Note: The defun texinfo-format-scan
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3098 ;; looks at "[@{}^'`\",=~ *?!-]"
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3099 ;; In the case of @*, a line break is inserted;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3100 ;; in the other cases, the characters are simply quoted and the @ is deleted.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3101 ;; Thus, `texinfo-format-scan' handles the following
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3102 ;; single-character accent commands: @^ @` @' @" @, @- @= @~
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3103
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3104 ;; @^ ==> ^ circumflex accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3105 ;; (put '^ 'texinfo-format 'texinfo-format-circumflex-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3106 ;; (defun texinfo-format-circumflex-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3107 ;; (texinfo-discard-command)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3108 ;; (insert "^"))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3109 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3110 ;; @` ==> ` grave accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3111 ;; (put '\` 'texinfo-format 'texinfo-format-grave-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3112 ;; (defun texinfo-format-grave-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3113 ;; (texinfo-discard-command)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3114 ;; (insert "\`"))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3115 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3116 ;; @' ==> ' acute accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3117 ;; (put '\' 'texinfo-format 'texinfo-format-acute-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3118 ;; (defun texinfo-format-acute-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3119 ;; (texinfo-discard-command)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3120 ;; (insert "'"))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3121 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3122 ;; @" ==> " umlaut accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3123 ;; (put '\" 'texinfo-format 'texinfo-format-umlaut-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3124 ;; (defun texinfo-format-umlaut-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3125 ;; (texinfo-discard-command)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3126 ;; (insert "\""))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3127 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3128 ;; @= ==> = overbar accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3129 ;; (put '= 'texinfo-format 'texinfo-format-overbar-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3130 ;; (defun texinfo-format-overbar-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3131 ;; (texinfo-discard-command)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3132 ;; (insert "="))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3133 ;;
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3134 ;; @~ ==> ~ tilde accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3135 ;; (put '~ 'texinfo-format 'texinfo-format-tilde-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3136 ;; (defun texinfo-format-tilde-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3137 ;; (texinfo-discard-command)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3138 ;; (insert "~"))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3139
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3140 ;; @OE{} ==> OE French-OE-ligature
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3141 (put 'OE 'texinfo-format 'texinfo-format-French-OE-ligature)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3142 (defun texinfo-format-French-OE-ligature ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3143 (insert "OE" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3144 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3145
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3146 ;; @oe{} ==> oe
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3147 (put 'oe 'texinfo-format 'texinfo-format-French-oe-ligature)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3148 (defun texinfo-format-French-oe-ligature () ; lower case
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3149 (insert "oe" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3150 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3151
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3152 ;; @AA{} ==> AA Scandinavian-A-with-circle
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3153 (put 'AA 'texinfo-format 'texinfo-format-Scandinavian-A-with-circle)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3154 (defun texinfo-format-Scandinavian-A-with-circle ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3155 (insert "AA" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3156 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3157
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3158 ;; @aa{} ==> aa
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3159 (put 'aa 'texinfo-format 'texinfo-format-Scandinavian-a-with-circle)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3160 (defun texinfo-format-Scandinavian-a-with-circle () ; lower case
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3161 (insert "aa" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3162 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3163
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3164 ;; @AE{} ==> AE Latin-Scandinavian-AE
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3165 (put 'AE 'texinfo-format 'texinfo-format-Latin-Scandinavian-AE)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3166 (defun texinfo-format-Latin-Scandinavian-AE ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3167 (insert "AE" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3168 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3169
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3170 ;; @ae{} ==> ae
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3171 (put 'ae 'texinfo-format 'texinfo-format-Latin-Scandinavian-ae)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3172 (defun texinfo-format-Latin-Scandinavian-ae () ; lower case
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3173 (insert "ae" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3174 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3175
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3176 ;; @ss{} ==> ss German-sharp-S
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3177 (put 'ss 'texinfo-format 'texinfo-format-German-sharp-S)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3178 (defun texinfo-format-German-sharp-S ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3179 (insert "ss" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3180 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3181
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3182 ;; @questiondown{} ==> ? upside-down-question-mark
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3183 (put 'questiondown 'texinfo-format 'texinfo-format-upside-down-question-mark)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3184 (defun texinfo-format-upside-down-question-mark ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3185 (insert "?" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3186 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3187
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3188 ;; @exclamdown{} ==> ! upside-down-exclamation-mark
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3189 (put 'exclamdown 'texinfo-format 'texinfo-format-upside-down-exclamation-mark)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3190 (defun texinfo-format-upside-down-exclamation-mark ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3191 (insert "!" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3192 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3193
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3194 ;; @L{} ==> L/ Polish suppressed-L (Lslash)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3195 (put 'L 'texinfo-format 'texinfo-format-Polish-suppressed-L)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3196 (defun texinfo-format-Polish-suppressed-L ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3197 (insert (texinfo-parse-arg-discard) "/L")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3198 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3199
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3200 ;; @l{} ==> l/ Polish suppressed-L (Lslash) (lower case)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3201 (put 'l 'texinfo-format 'texinfo-format-Polish-suppressed-l-lower-case)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3202 (defun texinfo-format-Polish-suppressed-l-lower-case ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3203 (insert (texinfo-parse-arg-discard) "/l")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3204 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3205
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3206
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3207 ;; @O{} ==> O/ Scandinavian O-with-slash
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3208 (put 'O 'texinfo-format 'texinfo-format-Scandinavian-O-with-slash)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3209 (defun texinfo-format-Scandinavian-O-with-slash ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3210 (insert (texinfo-parse-arg-discard) "O/")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3211 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3212
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3213 ;; @o{} ==> o/ Scandinavian O-with-slash (lower case)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3214 (put 'o 'texinfo-format 'texinfo-format-Scandinavian-o-with-slash-lower-case)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3215 (defun texinfo-format-Scandinavian-o-with-slash-lower-case ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3216 (insert (texinfo-parse-arg-discard) "o/")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3217 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3218
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3219 ;; Take arguments
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3220
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3221 ;; @,{c} ==> c, cedilla accent
78636
b1e667d914ef (\,): Calrify it's not a new-style unquote.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 78225
diff changeset
3222 (put '\, 'texinfo-format 'texinfo-format-cedilla-accent)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3223 (defun texinfo-format-cedilla-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3224 (insert (texinfo-parse-arg-discard) ",")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3225 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3226
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3227
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3228 ;; @dotaccent{o} ==> .o overdot-accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3229 (put 'dotaccent 'texinfo-format 'texinfo-format-overdot-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3230 (defun texinfo-format-overdot-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3231 (insert "." (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3232 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3233
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3234 ;; @ubaraccent{o} ==> _o underbar-accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3235 (put 'ubaraccent 'texinfo-format 'texinfo-format-underbar-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3236 (defun texinfo-format-underbar-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3237 (insert "_" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3238 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3239
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3240 ;; @udotaccent{o} ==> o-. underdot-accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3241 (put 'udotaccent 'texinfo-format 'texinfo-format-underdot-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3242 (defun texinfo-format-underdot-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3243 (insert (texinfo-parse-arg-discard) "-.")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3244 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3245
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3246 ;; @H{o} ==> ""o long Hungarian umlaut
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3247 (put 'H 'texinfo-format 'texinfo-format-long-Hungarian-umlaut)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3248 (defun texinfo-format-long-Hungarian-umlaut ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3249 (insert "\"\"" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3250 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3251
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3252 ;; @ringaccent{o} ==> *o ring accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3253 (put 'ringaccent 'texinfo-format 'texinfo-format-ring-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3254 (defun texinfo-format-ring-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3255 (insert "*" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3256 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3257
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3258 ;; @tieaccent{oo} ==> [oo tie after accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3259 (put 'tieaccent 'texinfo-format 'texinfo-format-tie-after-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3260 (defun texinfo-format-tie-after-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3261 (insert "[" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3262 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3263
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3264
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3265 ;; @u{o} ==> (o breve accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3266 (put 'u 'texinfo-format 'texinfo-format-breve-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3267 (defun texinfo-format-breve-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3268 (insert "(" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3269 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3270
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3271 ;; @v{o} ==> <o hacek accent
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3272 (put 'v 'texinfo-format 'texinfo-format-hacek-accent)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3273 (defun texinfo-format-hacek-accent ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3274 (insert "<" (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3275 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3276
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3277
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3278 ;; @dotless{i} ==> i dotless i and dotless j
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3279 (put 'dotless 'texinfo-format 'texinfo-format-dotless)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3280 (defun texinfo-format-dotless ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3281 (insert (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3282 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3283
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
3284
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3285 ;;; Definition formatting: @deffn, @defun, etc
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3286
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3287 ;; What definition formatting produces:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3288 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3289 ;; @deffn category name args...
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3290 ;; In Info, `Category: name ARGS'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3291 ;; In index: name: node. line#.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3292 ;;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3293 ;; @defvr category name
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3294 ;; In Info, `Category: name'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3295 ;; In index: name: node. line#.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3296 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3297 ;; @deftp category name attributes...
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3298 ;; `category name attributes...' Note: @deftp args in lower case.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3299 ;; In index: name: node. line#.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3300 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3301 ;; Specialized function-like or variable-like entity:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3302 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3303 ;; @defun, @defmac, @defspec, @defvar, @defopt
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3304 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3305 ;; @defun name args In Info, `Function: name ARGS'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3306 ;; @defmac name args In Info, `Macro: name ARGS'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3307 ;; @defvar name In Info, `Variable: name'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3308 ;; etc.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3309 ;; In index: name: node. line#.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3310 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3311 ;; Generalized typed-function-like or typed-variable-like entity:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3312 ;; @deftypefn category data-type name args...
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3313 ;; In Info, `Category: data-type name args...'
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3314 ;; @deftypevr category data-type name
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3315 ;; In Info, `Category: data-type name'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3316 ;; In index: name: node. line#.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3317 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3318 ;; Specialized typed-function-like or typed-variable-like entity:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3319 ;; @deftypefun data-type name args...
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3320 ;; In Info, `Function: data-type name ARGS'
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3321 ;; In index: name: node. line#.
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3322 ;;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3323 ;; @deftypevar data-type name
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3324 ;; In Info, `Variable: data-type name'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3325 ;; In index: name: node. line#. but include args after name!?
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3326 ;;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3327 ;; Generalized object oriented entity:
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3328 ;; @defop category class name args...
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3329 ;; In Info, `Category on class: name ARG'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3330 ;; In index: name on class: node. line#.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3331 ;;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3332 ;; @defcv category class name
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3333 ;; In Info, `Category of class: name'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3334 ;; In index: name of class: node. line#.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3335 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3336 ;; Specialized object oriented entity:
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3337 ;; @defmethod class name args...
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3338 ;; In Info, `Method on class: name ARGS'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3339 ;; In index: name on class: node. line#.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3340 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3341 ;; @defivar class name
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3342 ;; In Info, `Instance variable of class: name'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3343 ;; In index: name of class: node. line#.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3344
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3345
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3346 ;;; The definition formatting functions
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3347
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3348 (defun texinfo-format-defun ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3349 (texinfo-push-stack 'defun nil)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3350 (setq fill-column (- fill-column 5))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3351 (texinfo-format-defun-1 t))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3352
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3353 (defun texinfo-end-defun ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3354 (setq fill-column (+ fill-column 5))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3355 (texinfo-discard-command)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3356 (let ((start (nth 1 (texinfo-pop-stack 'defun))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3357 (texinfo-do-itemize start)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3358 ;; Delete extra newline inserted after header.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3359 (save-excursion
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3360 (goto-char start)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3361 (delete-char -1))))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3362
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3363 (defun texinfo-format-defunx ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3364 (texinfo-format-defun-1 nil))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3365
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3366 (defun texinfo-format-defun-1 (first-p)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3367 (let ((parse-args (texinfo-format-parse-defun-args))
4868
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
3368 (texinfo-defun-type (get texinfo-command-name 'texinfo-defun-type)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3369 (texinfo-discard-command)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3370 ;; Delete extra newline inserted after previous header line.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3371 (if (not first-p)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3372 (delete-char -1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3373 (funcall
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3374 (get texinfo-command-name 'texinfo-deffn-formatting-property) parse-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3375 ;; Insert extra newline so that paragraph filling does not mess
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3376 ;; with header line.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3377 (insert "\n\n")
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3378 (rplaca (cdr (cdr (car texinfo-stack))) (point))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3379 (funcall
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3380 (get texinfo-command-name 'texinfo-defun-indexing-property) parse-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3381
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3382 ;;; Formatting the first line of a definition
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3383
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3384 ;; @deffn, @defvr, @deftp
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3385 (put 'deffn 'texinfo-deffn-formatting-property 'texinfo-format-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3386 (put 'deffnx 'texinfo-deffn-formatting-property 'texinfo-format-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3387 (put 'defvr 'texinfo-deffn-formatting-property 'texinfo-format-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3388 (put 'defvrx 'texinfo-deffn-formatting-property 'texinfo-format-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3389 (put 'deftp 'texinfo-deffn-formatting-property 'texinfo-format-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3390 (put 'deftpx 'texinfo-deffn-formatting-property 'texinfo-format-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3391 (defun texinfo-format-deffn (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3392 ;; Generalized function-like, variable-like, or generic data-type entity:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3393 ;; @deffn category name args...
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3394 ;; In Info, `Category: name ARGS'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3395 ;; @deftp category name attributes...
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3396 ;; `category name attributes...' Note: @deftp args in lower case.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3397 (let ((category (car parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3398 (name (car (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3399 (args (cdr (cdr parsed-args))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3400 (insert " -- " category ": " name)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3401 (while args
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3402 (insert " "
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3403 (if (or (= ?& (aref (car args) 0))
4868
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
3404 (eq (eval (car texinfo-defun-type)) 'deftp-type))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3405 (car args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3406 (upcase (car args))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3407 (setq args (cdr args)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3408
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3409 ;; @defun, @defmac, @defspec, @defvar, @defopt: Specialized, simple
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3410 (put 'defun 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3411 'texinfo-format-specialized-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3412 (put 'defunx 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3413 'texinfo-format-specialized-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3414 (put 'defmac 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3415 'texinfo-format-specialized-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3416 (put 'defmacx 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3417 'texinfo-format-specialized-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3418 (put 'defspec 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3419 'texinfo-format-specialized-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3420 (put 'defspecx 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3421 'texinfo-format-specialized-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3422 (put 'defvar 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3423 'texinfo-format-specialized-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3424 (put 'defvarx 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3425 'texinfo-format-specialized-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3426 (put 'defopt 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3427 'texinfo-format-specialized-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3428 (put 'defoptx 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3429 'texinfo-format-specialized-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3430 (defun texinfo-format-specialized-defun (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3431 ;; Specialized function-like or variable-like entity:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3432 ;; @defun name args In Info, `Function: Name ARGS'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3433 ;; @defmac name args In Info, `Macro: Name ARGS'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3434 ;; @defvar name In Info, `Variable: Name'
4868
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
3435 ;; Use cdr of texinfo-defun-type to determine category:
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
3436 (let ((category (car (cdr texinfo-defun-type)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3437 (name (car parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3438 (args (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3439 (insert " -- " category ": " name)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3440 (while args
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3441 (insert " "
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3442 (if (= ?& (aref (car args) 0))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3443 (car args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3444 (upcase (car args))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3445 (setq args (cdr args)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3446
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3447 ;; @deftypefn, @deftypevr: Generalized typed
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3448 (put 'deftypefn 'texinfo-deffn-formatting-property 'texinfo-format-deftypefn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3449 (put 'deftypefnx 'texinfo-deffn-formatting-property 'texinfo-format-deftypefn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3450 (put 'deftypevr 'texinfo-deffn-formatting-property 'texinfo-format-deftypefn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3451 (put 'deftypevrx 'texinfo-deffn-formatting-property 'texinfo-format-deftypefn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3452 (defun texinfo-format-deftypefn (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3453 ;; Generalized typed-function-like or typed-variable-like entity:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3454 ;; @deftypefn category data-type name args...
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3455 ;; In Info, `Category: data-type name args...'
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3456 ;; @deftypevr category data-type name
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3457 ;; In Info, `Category: data-type name'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3458 ;; Note: args in lower case, unless modified in command line.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3459 (let ((category (car parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3460 (data-type (car (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3461 (name (car (cdr (cdr parsed-args))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3462 (args (cdr (cdr (cdr parsed-args)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3463 (insert " -- " category ": " data-type " " name)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3464 (while args
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3465 (insert " " (car args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3466 (setq args (cdr args)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3467
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3468 ;; @deftypefun, @deftypevar: Specialized typed
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3469 (put 'deftypefun 'texinfo-deffn-formatting-property 'texinfo-format-deftypefun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3470 (put 'deftypefunx 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3471 'texinfo-format-deftypefun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3472 (put 'deftypevar 'texinfo-deffn-formatting-property 'texinfo-format-deftypefun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3473 (put 'deftypevarx 'texinfo-deffn-formatting-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3474 'texinfo-format-deftypefun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3475 (defun texinfo-format-deftypefun (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3476 ;; Specialized typed-function-like or typed-variable-like entity:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3477 ;; @deftypefun data-type name args...
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3478 ;; In Info, `Function: data-type name ARGS'
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3479 ;; @deftypevar data-type name
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3480 ;; In Info, `Variable: data-type name'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3481 ;; Note: args in lower case, unless modified in command line.
4868
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
3482 ;; Use cdr of texinfo-defun-type to determine category:
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
3483 (let ((category (car (cdr texinfo-defun-type)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3484 (data-type (car parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3485 (name (car (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3486 (args (cdr (cdr parsed-args))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3487 (insert " -- " category ": " data-type " " name)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3488 (while args
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3489 (insert " " (car args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3490 (setq args (cdr args)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3491
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3492 ;; @defop: Generalized object-oriented
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3493 (put 'defop 'texinfo-deffn-formatting-property 'texinfo-format-defop)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3494 (put 'defopx 'texinfo-deffn-formatting-property 'texinfo-format-defop)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3495 (defun texinfo-format-defop (parsed-args)
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3496 ;; Generalized object oriented entity:
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3497 ;; @defop category class name args...
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3498 ;; In Info, `Category on class: name ARG'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3499 ;; Note: args in upper case; use of `on'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3500 (let ((category (car parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3501 (class (car (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3502 (name (car (cdr (cdr parsed-args))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3503 (args (cdr (cdr (cdr parsed-args)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3504 (insert " -- " category " on " class ": " name)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3505 (while args
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3506 (insert " " (upcase (car args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3507 (setq args (cdr args)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3508
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3509 ;; @defcv: Generalized object-oriented
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3510 (put 'defcv 'texinfo-deffn-formatting-property 'texinfo-format-defcv)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3511 (put 'defcvx 'texinfo-deffn-formatting-property 'texinfo-format-defcv)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3512 (defun texinfo-format-defcv (parsed-args)
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3513 ;; Generalized object oriented entity:
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3514 ;; @defcv category class name
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3515 ;; In Info, `Category of class: name'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3516 ;; Note: args in upper case; use of `of'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3517 (let ((category (car parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3518 (class (car (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3519 (name (car (cdr (cdr parsed-args))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3520 (args (cdr (cdr (cdr parsed-args)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3521 (insert " -- " category " of " class ": " name)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3522 (while args
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3523 (insert " " (upcase (car args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3524 (setq args (cdr args)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3525
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3526 ;; @defmethod: Specialized object-oriented
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3527 (put 'defmethod 'texinfo-deffn-formatting-property 'texinfo-format-defmethod)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3528 (put 'defmethodx 'texinfo-deffn-formatting-property 'texinfo-format-defmethod)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3529 (defun texinfo-format-defmethod (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3530 ;; Specialized object oriented entity:
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3531 ;; @defmethod class name args...
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3532 ;; In Info, `Method on class: name ARGS'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3533 ;; Note: args in upper case; use of `on'
4868
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
3534 ;; Use cdr of texinfo-defun-type to determine category:
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
3535 (let ((category (car (cdr texinfo-defun-type)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3536 (class (car parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3537 (name (car (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3538 (args (cdr (cdr parsed-args))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3539 (insert " -- " category " on " class ": " name)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3540 (while args
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3541 (insert " " (upcase (car args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3542 (setq args (cdr args)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3543
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3544 ;; @defivar: Specialized object-oriented
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3545 (put 'defivar 'texinfo-deffn-formatting-property 'texinfo-format-defivar)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3546 (put 'defivarx 'texinfo-deffn-formatting-property 'texinfo-format-defivar)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3547 (defun texinfo-format-defivar (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3548 ;; Specialized object oriented entity:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3549 ;; @defivar class name
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3550 ;; In Info, `Instance variable of class: name'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3551 ;; Note: args in upper case; use of `of'
4868
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
3552 ;; Use cdr of texinfo-defun-type to determine category:
6de32c7b6045 (texinfo-format-begin-end): Bind cmd locally.
Richard M. Stallman <rms@gnu.org>
parents: 4769
diff changeset
3553 (let ((category (car (cdr texinfo-defun-type)))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3554 (class (car parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3555 (name (car (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3556 (args (cdr (cdr parsed-args))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3557 (insert " -- " category " of " class ": " name)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3558 (while args
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3559 (insert " " (upcase (car args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3560 (setq args (cdr args)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3561
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3562
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3563 ;;; Indexing for definitions
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3564
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3565 ;; An index entry has three parts: the `entry proper', the node name, and the
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3566 ;; line number. Depending on the which command is used, the entry is
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3567 ;; formatted differently:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3568 ;;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3569 ;; @defun,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3570 ;; @defmac,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3571 ;; @defspec,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3572 ;; @defvar,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3573 ;; @defopt all use their 1st argument as the entry-proper
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3574 ;;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3575 ;; @deffn,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3576 ;; @defvr,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3577 ;; @deftp
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3578 ;; @deftypefun
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3579 ;; @deftypevar all use their 2nd argument as the entry-proper
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3580 ;;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3581 ;; @deftypefn,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3582 ;; @deftypevr both use their 3rd argument as the entry-proper
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3583 ;;
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3584 ;; @defmethod uses its 2nd and 1st arguments as an entry-proper
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3585 ;; formatted: NAME on CLASS
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3586
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3587 ;; @defop uses its 3rd and 2nd arguments as an entry-proper
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3588 ;; formatted: NAME on CLASS
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3589 ;;
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3590 ;; @defivar uses its 2nd and 1st arguments as an entry-proper
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3591 ;; formatted: NAME of CLASS
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3592 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3593 ;; @defcv uses its 3rd and 2nd argument as an entry-proper
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3594 ;; formatted: NAME of CLASS
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3595
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3596 (put 'defun 'texinfo-defun-indexing-property 'texinfo-index-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3597 (put 'defunx 'texinfo-defun-indexing-property 'texinfo-index-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3598 (put 'defmac 'texinfo-defun-indexing-property 'texinfo-index-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3599 (put 'defmacx 'texinfo-defun-indexing-property 'texinfo-index-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3600 (put 'defspec 'texinfo-defun-indexing-property 'texinfo-index-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3601 (put 'defspecx 'texinfo-defun-indexing-property 'texinfo-index-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3602 (put 'defvar 'texinfo-defun-indexing-property 'texinfo-index-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3603 (put 'defvarx 'texinfo-defun-indexing-property 'texinfo-index-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3604 (put 'defopt 'texinfo-defun-indexing-property 'texinfo-index-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3605 (put 'defoptx 'texinfo-defun-indexing-property 'texinfo-index-defun)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3606 (defun texinfo-index-defun (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3607 ;; use 1st parsed-arg as entry-proper
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3608 ;; `index-list' will be texinfo-findex or the like
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3609 (let ((index-list (get texinfo-command-name 'texinfo-defun-index)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3610 (set index-list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3611 (cons
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3612 ;; Three elements: entry-proper, node-name, line-number
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3613 (list
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3614 (car parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3615 texinfo-last-node
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3616 ;; Region formatting may not provide last node position.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3617 (if texinfo-last-node-pos
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3618 (1+ (count-lines texinfo-last-node-pos (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3619 1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3620 (symbol-value index-list)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3621
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3622 (put 'deffn 'texinfo-defun-indexing-property 'texinfo-index-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3623 (put 'deffnx 'texinfo-defun-indexing-property 'texinfo-index-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3624 (put 'defvr 'texinfo-defun-indexing-property 'texinfo-index-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3625 (put 'defvrx 'texinfo-defun-indexing-property 'texinfo-index-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3626 (put 'deftp 'texinfo-defun-indexing-property 'texinfo-index-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3627 (put 'deftpx 'texinfo-defun-indexing-property 'texinfo-index-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3628 (put 'deftypefun 'texinfo-defun-indexing-property 'texinfo-index-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3629 (put 'deftypefunx 'texinfo-defun-indexing-property 'texinfo-index-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3630 (put 'deftypevar 'texinfo-defun-indexing-property 'texinfo-index-deffn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3631 (put 'deftypevarx 'texinfo-defun-indexing-property 'texinfo-index-deffn)
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3632 (defun texinfo-index-deffn (parsed-args)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3633 ;; use 2nd parsed-arg as entry-proper
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3634 ;; `index-list' will be texinfo-findex or the like
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3635 (let ((index-list (get texinfo-command-name 'texinfo-defun-index)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3636 (set index-list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3637 (cons
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3638 ;; Three elements: entry-proper, node-name, line-number
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3639 (list
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3640 (car (cdr parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3641 texinfo-last-node
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3642 ;; Region formatting may not provide last node position.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3643 (if texinfo-last-node-pos
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3644 (1+ (count-lines texinfo-last-node-pos (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3645 1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3646 (symbol-value index-list)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3647
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3648 (put 'deftypefn 'texinfo-defun-indexing-property 'texinfo-index-deftypefn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3649 (put 'deftypefnx 'texinfo-defun-indexing-property 'texinfo-index-deftypefn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3650 (put 'deftypevr 'texinfo-defun-indexing-property 'texinfo-index-deftypefn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3651 (put 'deftypevrx 'texinfo-defun-indexing-property 'texinfo-index-deftypefn)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3652 (defun texinfo-index-deftypefn (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3653 ;; use 3rd parsed-arg as entry-proper
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3654 ;; `index-list' will be texinfo-findex or the like
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3655 (let ((index-list (get texinfo-command-name 'texinfo-defun-index)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3656 (set index-list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3657 (cons
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3658 ;; Three elements: entry-proper, node-name, line-number
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3659 (list
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3660 (car (cdr (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3661 texinfo-last-node
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3662 ;; Region formatting may not provide last node position.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3663 (if texinfo-last-node-pos
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3664 (1+ (count-lines texinfo-last-node-pos (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3665 1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3666 (symbol-value index-list)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3667
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3668 (put 'defmethod 'texinfo-defun-indexing-property 'texinfo-index-defmethod)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3669 (put 'defmethodx 'texinfo-defun-indexing-property 'texinfo-index-defmethod)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3670 (defun texinfo-index-defmethod (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3671 ;; use 2nd on 1st parsed-arg as entry-proper
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3672 ;; `index-list' will be texinfo-findex or the like
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3673 (let ((index-list (get texinfo-command-name 'texinfo-defun-index)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3674 (set index-list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3675 (cons
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3676 ;; Three elements: entry-proper, node-name, line-number
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3677 (list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3678 (format "%s on %s"
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3679 (car (cdr parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3680 (car parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3681 texinfo-last-node
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3682 ;; Region formatting may not provide last node position.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3683 (if texinfo-last-node-pos
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3684 (1+ (count-lines texinfo-last-node-pos (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3685 1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3686 (symbol-value index-list)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3687
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3688 (put 'defop 'texinfo-defun-indexing-property 'texinfo-index-defop)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3689 (put 'defopx 'texinfo-defun-indexing-property 'texinfo-index-defop)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3690 (defun texinfo-index-defop (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3691 ;; use 3rd on 2nd parsed-arg as entry-proper
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3692 ;; `index-list' will be texinfo-findex or the like
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3693 (let ((index-list (get texinfo-command-name 'texinfo-defun-index)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3694 (set index-list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3695 (cons
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3696 ;; Three elements: entry-proper, node-name, line-number
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3697 (list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3698 (format "%s on %s"
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3699 (car (cdr (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3700 (car (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3701 texinfo-last-node
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3702 ;; Region formatting may not provide last node position.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3703 (if texinfo-last-node-pos
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3704 (1+ (count-lines texinfo-last-node-pos (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3705 1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3706 (symbol-value index-list)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3707
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3708 (put 'defivar 'texinfo-defun-indexing-property 'texinfo-index-defivar)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3709 (put 'defivarx 'texinfo-defun-indexing-property 'texinfo-index-defivar)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3710 (defun texinfo-index-defivar (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3711 ;; use 2nd of 1st parsed-arg as entry-proper
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3712 ;; `index-list' will be texinfo-findex or the like
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3713 (let ((index-list (get texinfo-command-name 'texinfo-defun-index)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3714 (set index-list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3715 (cons
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3716 ;; Three elements: entry-proper, node-name, line-number
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3717 (list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3718 (format "%s of %s"
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3719 (car (cdr parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3720 (car parsed-args))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3721 texinfo-last-node
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3722 ;; Region formatting may not provide last node position.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3723 (if texinfo-last-node-pos
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3724 (1+ (count-lines texinfo-last-node-pos (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3725 1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3726 (symbol-value index-list)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3727
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3728 (put 'defcv 'texinfo-defun-indexing-property 'texinfo-index-defcv)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3729 (put 'defcvx 'texinfo-defun-indexing-property 'texinfo-index-defcv)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3730 (defun texinfo-index-defcv (parsed-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3731 ;; use 3rd of 2nd parsed-arg as entry-proper
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3732 ;; `index-list' will be texinfo-findex or the like
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3733 (let ((index-list (get texinfo-command-name 'texinfo-defun-index)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3734 (set index-list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3735 (cons
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3736 ;; Three elements: entry-proper, node-name, line-number
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3737 (list
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3738 (format "%s of %s"
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3739 (car (cdr (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3740 (car (cdr parsed-args)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3741 texinfo-last-node
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3742 ;; Region formatting may not provide last node position.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3743 (if texinfo-last-node-pos
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3744 (1+ (count-lines texinfo-last-node-pos (point)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3745 1))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3746 (symbol-value index-list)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3747
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3748
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3749 ;;; Properties for definitions
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3750
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3751 ;; Each definition command has six properties:
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3752 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3753 ;; 1. texinfo-deffn-formatting-property to format definition line
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3754 ;; 2. texinfo-defun-indexing-property to create index entry
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3755 ;; 3. texinfo-format formatting command
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3756 ;; 4. texinfo-end end formatting command
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3757 ;; 5. texinfo-defun-type type of deffn to format
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3758 ;; 6. texinfo-defun-index type of index to use
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3759 ;;
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3760 ;; The `x' forms of each definition command are used for the second
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3761 ;; and subsequent header lines.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3762
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3763 ;; The texinfo-deffn-formatting-property and texinfo-defun-indexing-property
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3764 ;; are listed just before the appropriate formatting and indexing commands.
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3765
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3766 (put 'deffn 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3767 (put 'deffnx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3768 (put 'deffn 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3769 (put 'deffn 'texinfo-defun-type '('deffn-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3770 (put 'deffnx 'texinfo-defun-type '('deffn-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3771 (put 'deffn 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3772 (put 'deffnx 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3773
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3774 (put 'defun 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3775 (put 'defunx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3776 (put 'defun 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3777 (put 'defun 'texinfo-defun-type '('defun-type "Function"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3778 (put 'defunx 'texinfo-defun-type '('defun-type "Function"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3779 (put 'defun 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3780 (put 'defunx 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3781
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3782 (put 'defmac 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3783 (put 'defmacx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3784 (put 'defmac 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3785 (put 'defmac 'texinfo-defun-type '('defun-type "Macro"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3786 (put 'defmacx 'texinfo-defun-type '('defun-type "Macro"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3787 (put 'defmac 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3788 (put 'defmacx 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3789
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3790 (put 'defspec 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3791 (put 'defspecx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3792 (put 'defspec 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3793 (put 'defspec 'texinfo-defun-type '('defun-type "Special form"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3794 (put 'defspecx 'texinfo-defun-type '('defun-type "Special form"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3795 (put 'defspec 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3796 (put 'defspecx 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3797
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3798 (put 'defvr 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3799 (put 'defvrx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3800 (put 'defvr 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3801 (put 'defvr 'texinfo-defun-type '('deffn-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3802 (put 'defvrx 'texinfo-defun-type '('deffn-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3803 (put 'defvr 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3804 (put 'defvrx 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3805
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3806 (put 'defvar 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3807 (put 'defvarx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3808 (put 'defvar 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3809 (put 'defvar 'texinfo-defun-type '('defun-type "Variable"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3810 (put 'defvarx 'texinfo-defun-type '('defun-type "Variable"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3811 (put 'defvar 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3812 (put 'defvarx 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3813
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3814 (put 'defconst 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3815 (put 'defconstx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3816 (put 'defconst 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3817 (put 'defconst 'texinfo-defun-type '('defun-type "Constant"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3818 (put 'defconstx 'texinfo-defun-type '('defun-type "Constant"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3819 (put 'defconst 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3820 (put 'defconstx 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3821
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3822 (put 'defcmd 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3823 (put 'defcmdx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3824 (put 'defcmd 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3825 (put 'defcmd 'texinfo-defun-type '('defun-type "Command"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3826 (put 'defcmdx 'texinfo-defun-type '('defun-type "Command"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3827 (put 'defcmd 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3828 (put 'defcmdx 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3829
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3830 (put 'defopt 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3831 (put 'defoptx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3832 (put 'defopt 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3833 (put 'defopt 'texinfo-defun-type '('defun-type "User Option"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3834 (put 'defoptx 'texinfo-defun-type '('defun-type "User Option"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3835 (put 'defopt 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3836 (put 'defoptx 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3837
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3838 (put 'deftp 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3839 (put 'deftpx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3840 (put 'deftp 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3841 (put 'deftp 'texinfo-defun-type '('deftp-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3842 (put 'deftpx 'texinfo-defun-type '('deftp-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3843 (put 'deftp 'texinfo-defun-index 'texinfo-tindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3844 (put 'deftpx 'texinfo-defun-index 'texinfo-tindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3845
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3846 ;;; Object-oriented stuff is a little hairier.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3847
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3848 (put 'defop 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3849 (put 'defopx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3850 (put 'defop 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3851 (put 'defop 'texinfo-defun-type '('defop-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3852 (put 'defopx 'texinfo-defun-type '('defop-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3853 (put 'defop 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3854 (put 'defopx 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3855
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3856 (put 'defmethod 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3857 (put 'defmethodx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3858 (put 'defmethod 'texinfo-end 'texinfo-end-defun)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3859 (put 'defmethod 'texinfo-defun-type '('defmethod-type "Method"))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3860 (put 'defmethodx 'texinfo-defun-type '('defmethod-type "Method"))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3861 (put 'defmethod 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3862 (put 'defmethodx 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3863
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3864 (put 'defcv 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3865 (put 'defcvx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3866 (put 'defcv 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3867 (put 'defcv 'texinfo-defun-type '('defop-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3868 (put 'defcvx 'texinfo-defun-type '('defop-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3869 (put 'defcv 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3870 (put 'defcvx 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3871
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3872 (put 'defivar 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3873 (put 'defivarx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3874 (put 'defivar 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3875 (put 'defivar 'texinfo-defun-type '('defmethod-type "Instance variable"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3876 (put 'defivarx 'texinfo-defun-type '('defmethod-type "Instance variable"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3877 (put 'defivar 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3878 (put 'defivarx 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3879
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3880 ;;; Typed functions and variables
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3881
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3882 (put 'deftypefn 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3883 (put 'deftypefnx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3884 (put 'deftypefn 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3885 (put 'deftypefn 'texinfo-defun-type '('deftypefn-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3886 (put 'deftypefnx 'texinfo-defun-type '('deftypefn-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3887 (put 'deftypefn 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3888 (put 'deftypefnx 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3889
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3890 (put 'deftypefun 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3891 (put 'deftypefunx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3892 (put 'deftypefun 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3893 (put 'deftypefun 'texinfo-defun-type '('deftypefun-type "Function"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3894 (put 'deftypefunx 'texinfo-defun-type '('deftypefun-type "Function"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3895 (put 'deftypefun 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3896 (put 'deftypefunx 'texinfo-defun-index 'texinfo-findex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3897
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3898 (put 'deftypevr 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3899 (put 'deftypevrx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3900 (put 'deftypevr 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3901 (put 'deftypevr 'texinfo-defun-type '('deftypefn-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3902 (put 'deftypevrx 'texinfo-defun-type '('deftypefn-type nil))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3903 (put 'deftypevr 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3904 (put 'deftypevrx 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3905
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3906 (put 'deftypevar 'texinfo-format 'texinfo-format-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3907 (put 'deftypevarx 'texinfo-format 'texinfo-format-defunx)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3908 (put 'deftypevar 'texinfo-end 'texinfo-end-defun)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3909 (put 'deftypevar 'texinfo-defun-type '('deftypevar-type "Variable"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3910 (put 'deftypevarx 'texinfo-defun-type '('deftypevar-type "Variable"))
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3911 (put 'deftypevar 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3912 (put 'deftypevarx 'texinfo-defun-index 'texinfo-vindex)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3913
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
3914
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3915 ;;; @set, @clear, @ifset, @ifclear
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3916
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3917 ;; If a flag is set with @set FLAG, then text between @ifset and @end
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3918 ;; ifset is formatted normally, but if the flag is is cleared with
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3919 ;; @clear FLAG, then the text is not formatted; it is ignored.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3920
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3921 ;; If a flag is cleared with @clear FLAG, then text between @ifclear
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3922 ;; and @end ifclear is formatted normally, but if the flag is is set with
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3923 ;; @set FLAG, then the text is not formatted; it is ignored. @ifclear
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3924 ;; is the opposite of @ifset.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3925
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3926 ;; If a flag is set to a string with @set FLAG,
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3927 ;; replace @value{FLAG} with the string.
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3928 ;; If a flag with a value is cleared,
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3929 ;; @value{FLAG} is invalid,
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3930 ;; as if there had never been any @set FLAG previously.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3931
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3932 (put 'clear 'texinfo-format 'texinfo-clear)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3933 (defun texinfo-clear ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3934 "Clear the value of the flag."
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3935 (let* ((arg (texinfo-parse-arg-discard))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3936 (flag (car (read-from-string arg)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3937 (value (substring arg (cdr (read-from-string arg)))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3938 (put flag 'texinfo-whether-setp 'flag-cleared)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3939 (put flag 'texinfo-set-value "")))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3940
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3941 (put 'set 'texinfo-format 'texinfo-set)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3942 (defun texinfo-set ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3943 "Set the value of the flag, optionally to a string.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3944 The command `@set foo This is a string.'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3945 sets flag foo to the value: `This is a string.'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3946 The command `@value{foo}' expands to the value."
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3947 (let* ((arg (texinfo-parse-arg-discard))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3948 (flag (car (read-from-string arg)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3949 (value (substring arg (cdr (read-from-string arg)))))
37538
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
3950 (if (string-match "^[ \t]+" value)
92c065fa43f6 (texinfo-format-parse-args): Don't
Gerd Moellmann <gerd@gnu.org>
parents: 36300
diff changeset
3951 (setq value (substring value (match-end 0))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3952 (put flag 'texinfo-whether-setp 'flag-set)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3953 (put flag 'texinfo-set-value value)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3954
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3955 (put 'value 'texinfo-format 'texinfo-value)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3956 (defun texinfo-value ()
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3957 "Insert the string to which the flag is set.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3958 The command `@set foo This is a string.'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3959 sets flag foo to the value: `This is a string.'
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3960 The command `@value{foo}' expands to the value."
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3961 (let ((arg (texinfo-parse-arg-discard)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3962 (cond ((and
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3963 (eq (get (car (read-from-string arg)) 'texinfo-whether-setp)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3964 'flag-set)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3965 (get (car (read-from-string arg)) 'texinfo-set-value))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3966 (insert (get (car (read-from-string arg)) 'texinfo-set-value)))
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3967 ((eq (get (car (read-from-string arg)) 'texinfo-whether-setp)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3968 'flag-cleared)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3969 (insert (format "{No value for \"%s\"}" arg)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3970 ((eq (get (car (read-from-string arg)) 'texinfo-whether-setp) nil)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3971 (insert (format "{No value for \"%s\"}" arg))))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3972
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3973 (put 'ifset 'texinfo-end 'texinfo-discard-command)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3974 (put 'ifset 'texinfo-format 'texinfo-if-set)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3975 (defun texinfo-if-set ()
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
3976 "If set, continue formatting; else do not format region up to @end ifset."
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3977 (let ((arg (texinfo-parse-arg-discard)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3978 (cond
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3979 ((eq (get (car (read-from-string arg)) 'texinfo-whether-setp)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3980 'flag-set)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3981 ;; Format the text (i.e., do not remove it); do nothing here.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3982 ())
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3983 ((eq (get (car (read-from-string arg)) 'texinfo-whether-setp)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3984 'flag-cleared)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3985 ;; Clear region (i.e., cause the text to be ignored).
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3986 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
3987 (re-search-forward "@end ifset[ \t]*\n")))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3988 ((eq (get (car (read-from-string arg)) 'texinfo-whether-setp)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3989 nil)
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
3990 ;; In this case flag is neither set nor cleared.
5118
eec34ce70181 (texinfo-if-set, texinfo-if-clear): Act appropriately when flat neither
Robert J. Chassell <bob@rattlesnake.com>
parents: 4982
diff changeset
3991 ;; Act as if set, i.e. do nothing.
eec34ce70181 (texinfo-if-set, texinfo-if-clear): Act appropriately when flat neither
Robert J. Chassell <bob@rattlesnake.com>
parents: 4982
diff changeset
3992 ()))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3993
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3994 (put 'ifclear 'texinfo-end 'texinfo-discard-command)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3995 (put 'ifclear 'texinfo-format 'texinfo-if-clear)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3996 (defun texinfo-if-clear ()
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
3997 "If clear, continue formatting; if set, do not format up to @end ifset."
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3998 (let ((arg (texinfo-parse-arg-discard)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
3999 (cond
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4000 ((eq (get (car (read-from-string arg)) 'texinfo-whether-setp)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4001 'flag-set)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4002 ;; Clear region (i.e., cause the text to be ignored).
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4003 (delete-region texinfo-command-start
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
4004 (re-search-forward "@end ifclear[ \t]*\n")))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4005 ((eq (get (car (read-from-string arg)) 'texinfo-whether-setp)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4006 'flag-cleared)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4007 ;; Format the text (i.e., do not remove it); do nothing here.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4008 ())
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4009 ((eq (get (car (read-from-string arg)) 'texinfo-whether-setp)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4010 nil)
49599
5ade352e8d1c Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48932
diff changeset
4011 ;; In this case flag is neither set nor cleared.
5118
eec34ce70181 (texinfo-if-set, texinfo-if-clear): Act appropriately when flat neither
Robert J. Chassell <bob@rattlesnake.com>
parents: 4982
diff changeset
4012 ;; Act as if clear, i.e. do nothing.
eec34ce70181 (texinfo-if-set, texinfo-if-clear): Act appropriately when flat neither
Robert J. Chassell <bob@rattlesnake.com>
parents: 4982
diff changeset
4013 ()))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4014
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4015 ;;; @ifeq
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4016
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4017 (put 'ifeq 'texinfo-format 'texinfo-format-ifeq)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4018 (defun texinfo-format-ifeq ()
17939
533508e3c425 (texinfo-extra-inter-column-width):
Richard M. Stallman <rms@gnu.org>
parents: 17938
diff changeset
4019 "If ARG1 and ARG2 caselessly string compare to same string, perform COMMAND.
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4020 Otherwise produces no output.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4021
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4022 Thus:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4023 @ifeq{ arg1 , arg1 , @code{foo}} bar
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4024
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4025 ==> `foo' bar.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4026 but
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4027 @ifeq{ arg1 , arg2 , @code{foo}} bar
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4028
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4029 ==> bar
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4030
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4031 Note that the Texinfo command and its arguments must be arguments to
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4032 the @ifeq command."
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4033 ;; compare-buffer-substrings does not exist in version 18; don't use
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4034 (goto-char texinfo-command-end)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4035 (let* ((case-fold-search t)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4036 (stop (save-excursion (forward-sexp 1) (point)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4037 start end
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4038 ;; @ifeq{arg1, arg2, @command{optional-args}}
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4039 (arg1
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4040 (progn
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4041 (forward-char 1)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4042 (skip-chars-forward " ")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4043 (setq start (point))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4044 (search-forward "," stop t)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4045 (skip-chars-backward ", ")
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
4046 (buffer-substring-no-properties start (point))))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4047 (arg2
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4048 (progn
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4049 (search-forward "," stop t)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4050 (skip-chars-forward " ")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4051 (setq start (point))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4052 (search-forward "," stop t)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4053 (skip-chars-backward ", ")
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
4054 (buffer-substring-no-properties start (point))))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4055 (texinfo-command
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4056 (progn
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4057 (search-forward "," stop t)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4058 (skip-chars-forward " ")
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4059 (setq start (point))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4060 (goto-char (1- stop))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4061 (skip-chars-backward " ")
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
4062 (buffer-substring-no-properties start (point)))))
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4063 (delete-region texinfo-command-start stop)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4064 (if (equal arg1 arg2)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4065 (insert texinfo-command))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4066 (goto-char texinfo-command-start)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4067
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4068
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4069 ;;; Process included files: `@include' command
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4070
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4071 ;; Updated 19 October 1990
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4072 ;; In the original version, include files were ignored by Info but
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4073 ;; incorporated in to the printed manual. To make references to the
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4074 ;; included file, the Texinfo source file has to refer to the included
14040
187735b53d52 Comment fixes.
Karl Heuer <kwzh@gnu.org>
parents: 13337
diff changeset
4075 ;; files using the `(filename)nodename' format for referring to other
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4076 ;; Info files. Also, the included files had to be formatted on their
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4077 ;; own. It was just like they were another file.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4078
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4079 ;; Currently, include files are inserted into the buffer that is
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4080 ;; formatted for Info. If large, the resulting info file is split and
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4081 ;; tagified. For current include files to work, the master menu must
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4082 ;; refer to all the nodes, and the highest level nodes in the include
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4083 ;; files must have the correct next, prev, and up pointers.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4084
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4085 ;; The included file may have an @setfilename and even an @settitle,
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4086 ;; but not an `\input texinfo' line.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4087
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4088 ;; Updated 24 March 1993
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4089 ;; In order for @raisesections and @lowersections to work, included
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4090 ;; files must be inserted into the buffer holding the outer file
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4091 ;; before other Info formatting takes place. So @include is no longer
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4092 ;; is treated like other @-commands.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4093 (put 'include 'texinfo-format 'texinfo-format-noop)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4094
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4095 ;; Original definition:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4096 ;; (defun texinfo-format-include ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4097 ;; (let ((filename (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4098 ;; (default-directory input-directory)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4099 ;; subindex)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4100 ;; (setq subindex
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4101 ;; (save-excursion
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4102 ;; (progn (find-file
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4103 ;; (cond ((file-readable-p (concat filename ".texinfo"))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4104 ;; (concat filename ".texinfo"))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4105 ;; ((file-readable-p (concat filename ".texi"))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4106 ;; (concat filename ".texi"))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4107 ;; ((file-readable-p (concat filename ".tex"))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4108 ;; (concat filename ".tex"))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4109 ;; ((file-readable-p filename)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4110 ;; filename)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4111 ;; (t (error "@include'd file %s not found"
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4112 ;; filename))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4113 ;; (texinfo-format-buffer-1))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4114 ;; (texinfo-subindex 'texinfo-vindex (car subindex) (nth 1 subindex))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4115 ;; (texinfo-subindex 'texinfo-findex (car subindex) (nth 2 subindex))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4116 ;; (texinfo-subindex 'texinfo-cindex (car subindex) (nth 3 subindex))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4117 ;; (texinfo-subindex 'texinfo-pindex (car subindex) (nth 4 subindex))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4118 ;; (texinfo-subindex 'texinfo-tindex (car subindex) (nth 5 subindex))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4119 ;; (texinfo-subindex 'texinfo-kindex (car subindex) (nth 6 subindex))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4120 ;;
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4121 ;;(defun texinfo-subindex (indexvar file content)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4122 ;; (set indexvar (cons (list 'recurse file content)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4123 ;; (symbol-value indexvar))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4124
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4125 ;; Second definition:
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4126 ;; (put 'include 'texinfo-format 'texinfo-format-include)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4127 ;; (defun texinfo-format-include ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4128 ;; (let ((filename (concat input-directory
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4129 ;; (texinfo-parse-arg-discard)))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4130 ;; (default-directory input-directory))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4131 ;; (message "Reading: %s" filename)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4132 ;; (save-excursion
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4133 ;; (save-restriction
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4134 ;; (narrow-to-region
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4135 ;; (point)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4136 ;; (+ (point) (car (cdr (insert-file-contents filename)))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4137 ;; (goto-char (point-min))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4138 ;; (texinfo-append-refill)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4139 ;; (texinfo-format-convert (point-min) (point-max))))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4140 ;; (setq last-input-buffer input-buffer) ; to bypass setfilename
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4141 ;; ))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4142
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4143
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4144 ;;; Numerous commands do nothing in Info
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4145 ;; These commands are defined in texinfo.tex for printed output.
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4146
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4147
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4148 ;;; various noops, such as @b{foo}, that take arguments in braces
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4149
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4150 (put 'b 'texinfo-format 'texinfo-format-noop)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4151 (put 'i 'texinfo-format 'texinfo-format-noop)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4152 (put 'r 'texinfo-format 'texinfo-format-noop)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4153 (put 't 'texinfo-format 'texinfo-format-noop)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4154 (put 'w 'texinfo-format 'texinfo-format-noop)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4155 (put 'asis 'texinfo-format 'texinfo-format-noop)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4156 (put 'dmn 'texinfo-format 'texinfo-format-noop)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4157 (put 'math 'texinfo-format 'texinfo-format-noop)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4158 (put 'titlefont 'texinfo-format 'texinfo-format-noop)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4159 (defun texinfo-format-noop ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4160 (insert (texinfo-parse-arg-discard))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4161 (goto-char texinfo-command-start))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4162
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4163 ;; @hyphenation command discards an argument within braces
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4164 (put 'hyphenation 'texinfo-format 'texinfo-discard-command-and-arg)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4165 (defun texinfo-discard-command-and-arg ()
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4166 "Discard both @-command and its argument in braces."
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4167 (goto-char texinfo-command-end)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4168 (forward-list 1)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4169 (setq texinfo-command-end (point))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4170 (delete-region texinfo-command-start texinfo-command-end))
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4171
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4172
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4173 ;;; Do nothing commands, such as @smallbook, that have no args and no braces
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4174 ;; These must appear on a line of their own
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4175
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4176 (put 'bye 'texinfo-format 'texinfo-discard-line)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4177 (put 'smallbook 'texinfo-format 'texinfo-discard-line)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4178 (put 'finalout 'texinfo-format 'texinfo-discard-line)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4179 (put 'overfullrule 'texinfo-format 'texinfo-discard-line)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4180 (put 'smallbreak 'texinfo-format 'texinfo-discard-line)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4181 (put 'medbreak 'texinfo-format 'texinfo-discard-line)
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4182 (put 'bigbreak 'texinfo-format 'texinfo-discard-line)
48063
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
4183 (put 'afourpaper 'texinfo-format 'texinfo-discard-line)
48755
a4aa559a2dec Fix typos found by TAKAHASHI Kaoru <kaoru@kaisei.org>.
Robert J. Chassell <bob@rattlesnake.com>
parents: 48697
diff changeset
4184 (put 'afivepaper 'texinfo-format 'texinfo-discard-line)
a4aa559a2dec Fix typos found by TAKAHASHI Kaoru <kaoru@kaisei.org>.
Robert J. Chassell <bob@rattlesnake.com>
parents: 48697
diff changeset
4185 (put 'afourlatex 'texinfo-format 'texinfo-discard-line)
a4aa559a2dec Fix typos found by TAKAHASHI Kaoru <kaoru@kaisei.org>.
Robert J. Chassell <bob@rattlesnake.com>
parents: 48697
diff changeset
4186 (put 'afourwide 'texinfo-format 'texinfo-discard-line)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4187
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4188
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4189 ;;; These noop commands discard the rest of the line.
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4190
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4191 (put 'c 'texinfo-format 'texinfo-discard-line-with-args)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4192 (put 'comment 'texinfo-format 'texinfo-discard-line-with-args)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4193 (put 'contents 'texinfo-format 'texinfo-discard-line-with-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4194 (put 'group 'texinfo-end 'texinfo-discard-line-with-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4195 (put 'group 'texinfo-format 'texinfo-discard-line-with-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4196 (put 'headings 'texinfo-format 'texinfo-discard-line-with-args)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4197 (put 'setchapterstyle 'texinfo-format 'texinfo-discard-line-with-args)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4198 (put 'hsize 'texinfo-format 'texinfo-discard-line-with-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4199 (put 'itemindent 'texinfo-format 'texinfo-discard-line-with-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4200 (put 'lispnarrowing 'texinfo-format 'texinfo-discard-line-with-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4201 (put 'need 'texinfo-format 'texinfo-discard-line-with-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4202 (put 'nopara 'texinfo-format 'texinfo-discard-line-with-args)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4203
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4204 ;; @novalidate suppresses cross-reference checking and auxiliary file
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4205 ;; creation with TeX. The Info-validate command checks that every
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4206 ;; node pointer points to an existing node. Since this Info command
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4207 ;; is not invoked automatically, the @novalidate command is irrelevant
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4208 ;; and not supported by texinfmt.el
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4209 (put 'novalidate 'texinfo-format 'texinfo-discard-line-with-args)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4210
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4211 (put 'page 'texinfo-format 'texinfo-discard-line-with-args)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4212 (put 'pagesizes 'texinfo-format 'texinfo-discard-line-with-args)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4213 (put 'parindent 'texinfo-format 'texinfo-discard-line-with-args)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4214 (put 'setchapternewpage 'texinfo-format 'texinfo-discard-line-with-args)
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4215 (put 'setq 'texinfo-format 'texinfo-discard-line-with-args)
22695
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4216
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4217 (put 'setcontentsaftertitlepage
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4218 'texinfo-format 'texinfo-discard-line-with-args)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4219 (put 'setshortcontentsaftertitlepage
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4220 'texinfo-format 'texinfo-discard-line-with-args)
c47e86637371 (texinfmt-version): Update version.
Richard M. Stallman <rms@gnu.org>
parents: 22661
diff changeset
4221
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4222 (put 'settitle 'texinfo-format 'texinfo-discard-line-with-args)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4223 (put 'setx 'texinfo-format 'texinfo-discard-line-with-args)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4224 (put 'shortcontents 'texinfo-format 'texinfo-discard-line-with-args)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4225 (put 'shorttitlepage 'texinfo-format 'texinfo-discard-line-with-args)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4226 (put 'summarycontents 'texinfo-format 'texinfo-discard-line-with-args)
17937
4a8e23659626 (texinfmt-version): New function and variable.
Richard M. Stallman <rms@gnu.org>
parents: 15985
diff changeset
4227 (put 'input 'texinfo-format 'texinfo-discard-line-with-args)
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4228
48063
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
4229 (put 'documentlanguage 'texinfo-format 'texinfo-discard-line-with-args)
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
4230 (put 'documentencoding 'texinfo-format 'texinfo-discard-line-with-args)
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
4231
4cef5030d270 (texinfo-format-ifplaintext): New function.
Juanma Barranquero <lekktu@gmail.com>
parents: 43808
diff changeset
4232
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4233
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4234 ;;; Some commands cannot be handled
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4235
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4236 (defun texinfo-unsupported ()
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4237 (error "%s is not handled by texinfo"
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
4238 (buffer-substring-no-properties texinfo-command-start texinfo-command-end)))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4239
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4240 ;;; Batch formatting
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4241
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4242 (defun batch-texinfo-format ()
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
4243 "Run `texinfo-format-buffer' on the files remaining on the command line.
73729
581994501499 (batch-texinfo-format): Fix typo in docstring.
Juanma Barranquero <lekktu@gmail.com>
parents: 71781
diff changeset
4244 Must be used only with -batch, and kills Emacs on completion.
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4245 Each file will be processed even if an error occurred previously.
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4246 For example, invoke
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4247 \"emacs -batch -funcall batch-texinfo-format $docs/ ~/*.texinfo\"."
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4248 (if (not noninteractive)
38436
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38044
diff changeset
4249 (error "batch-texinfo-format may only be used -batch"))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4250 (let ((version-control t)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4251 (auto-save-default nil)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4252 (find-file-run-dired nil)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4253 (kept-old-versions 259259)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4254 (kept-new-versions 259259))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4255 (let ((error 0)
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4256 file
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4257 (files ()))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4258 (while command-line-args-left
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4259 (setq file (expand-file-name (car command-line-args-left)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4260 (cond ((not (file-exists-p file))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4261 (message ">> %s does not exist!" file)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4262 (setq error 1
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4263 command-line-args-left (cdr command-line-args-left)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4264 ((file-directory-p file)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4265 (setq command-line-args-left
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4266 (nconc (directory-files file)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4267 (cdr command-line-args-left))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4268 (t
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
4269 (push file files)
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
4270 (setq command-line-args-left (cdr command-line-args-left)))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4271 (while files
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4272 (setq file (car files)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4273 files (cdr files))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4274 (condition-case err
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4275 (progn
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4276 (if buffer-file-name (kill-buffer (current-buffer)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4277 (find-file file)
4769
d1b5ca8f5493 (texinfo-format-region texinfo-format-buffer): Add ###autoload cookies.
Brian Fox <bfox@gnu.org>
parents: 4396
diff changeset
4278 (buffer-disable-undo (current-buffer))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4279 (set-buffer-modified-p nil)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4280 (texinfo-mode)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4281 (message "texinfo formatting %s..." file)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4282 (texinfo-format-buffer nil)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4283 (if (buffer-modified-p)
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4284 (progn (message "Saving modified %s" (buffer-file-name))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4285 (save-buffer))))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4286 (error
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4287 (message ">> Error: %s" (prin1-to-string err))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4288 (message ">> point at")
48518
0eb01081d9f5 (texinfo-format-separate-node): Handle node names with
Robert J. Chassell <bob@rattlesnake.com>
parents: 48063
diff changeset
4289 (let ((s (buffer-substring-no-properties (point)
49700
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
4290 (min (+ (point) 100)
176bfa5ffebf (texinfo-format-iftex, texinfo-format-ifhtml)
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 49599
diff changeset
4291 (point-max))))
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4292 (tem 0))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4293 (while (setq tem (string-match "\n+" s tem))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4294 (setq s (concat (substring s 0 (match-beginning 0))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4295 "\n>> "
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4296 (substring s (match-end 0)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4297 tem (1+ tem)))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4298 (message ">> %s" s))
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4299 (setq error 1))))
189
70bc47d3c6c9 Initial revision
Brian Preble <rassilon@gnu.org>
parents:
diff changeset
4300 (kill-emacs error))))
657
fec3f9a1e3e5 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 258
diff changeset
4301
4396
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4302
0ab53cbfac0e Installed the version from the Texinfo package.
Richard M. Stallman <rms@gnu.org>
parents: 3591
diff changeset
4303 ;;; Place `provide' at end of file.
3456
57089987a2de Provide texinfmt.
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
4304 (provide 'texinfmt)
57089987a2de Provide texinfmt.
Richard M. Stallman <rms@gnu.org>
parents: 2233
diff changeset
4305
81631
67d88e663c87 (texinfo-raisesections-alist, texinfo-lowersections-alist): Merge definition
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 75347
diff changeset
4306 ;; arch-tag: 1e8d9a2d-bca0-40a0-ac6c-dab01bc6f725
38436
b174db545cfd Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38044
diff changeset
4307 ;;; texinfmt.el ends here