annotate etc/enriched.doc @ 10313:55ce83f36b30

Use BUF_INTERVALS throughout. (temp_set_point, set_point): Use BUF_PT. (get_local_map): Get keymap from specified buffer, not current one.
author Richard M. Stallman <rms@gnu.org>
date Mon, 02 Jan 1995 21:38:22 +0000
parents 721cc180810c
children 2484f8186e34
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9678
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
1 <param>-*-enriched-*-width:86
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
2 </param><center><bold><x-bg-color><param>gray</param><x-color><param>blue</param>Enriched:
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
3
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
4 A WYSIWYG enriched-text editing environment for GNU Emacs
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
5
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
6
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
7 </x-color></x-bg-color></bold></center><bold>INTRODUCTION
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
8
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
9
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
10 </bold><indent>This package, along with the <bold>facemenu</bold> package, is the beginning of a WYSIWYG
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
11 ("what you see is what you get") Emacs mode for editing <italic>enriched text: </italic>text with
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
12 different faces, colors, etc. Facemenu allows you to add faces (such as
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
13 <bold>boldface</bold>, <italic>italics</italic>, and <underline>underlining</underline>) your documents, while <bold>enriched</bold> allows you to
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
14 save the documents with those "text properties" included. The format in which
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
15 they are saved is called <italic>text/enriched</italic>, and is defined as part of the MIME
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
16 standard, so that your documents are transportable (even through email) to many
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
17 other systems.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
18
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
19
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
20 Not all systems will be able to recreate all of the features of your document,
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
21 but they will get as close as possible. For systems that do not understand it at
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
22 all, the text of the document should still be legible; the reader can simply
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
23 ignore the annotations specifying face changes and the like.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
24
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
25
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
26 </indent><bold>INSTALLATION and STARTUP </bold>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
27
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
28
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
29 <indent>The <fixed>enriched.el</fixed> file should be installed somewhere that emacs will find it (ie,
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
30 one of the directories on emacs's <fixed>load-path </fixed>variable), and byte-compiled for
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
31 speed.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
32
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
33
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
34 The documentation below assumes that you have my <fixed>facemenu.el</fixed> (which is included
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
35 in recent versions of emacs). You may also find it useful to have Jim Thompson's
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
36 <fixed>ps-print.el</fixed>, which will allow you to print out buffers including their faces
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
37 (unfortunately it is not currently able to deal with merged faces; hopefully it
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
38 will be revised soon.) These two files should also be installed into your lisp
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
39 directory and byte-compiled.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
40
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
41
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
42 Put the following code into your .emacs file to automatically load enriched when
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
43 needed:
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
44
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
45
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
46 <indent><fixed>(autoload 'enriched-mode "enriched" nil t)</fixed></indent>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
47
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
48
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
49 <bold>Enriched </bold>puts an identifying header into files it writes, which allows it to
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
50 recognize any emacs-generated <italic>text/enriched</italic> file and put itself into the proper
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
51 mode. If you get a file from some other source, however, such as through the
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
52 mail, you may have to enter enriched-mode manually:
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
53
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
54
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
55 <indent><fixed>M-x enriched-mode</fixed></indent>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
56
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
57
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
58 You may be asked a couple of questions at this point:
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
59
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
60
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
61 <italic>Does the buffer need to be translated now?</italic> If the buffer contains <italic>text/enriched
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
62 </italic>data which needs to be translated into a readable document with fonts and such,
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
63 then answer "yes". If you are putting a new document into text/enriched format
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
64 for the first time, then say "no".
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
65
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
66
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
67 <italic>Reformat for current display width?</italic> If emacs knows that the document was created
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
68 with the same display width that is currently in effect, it will trust the line
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
69 breaks that are in the file, which saves some time. If it was saved at a
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
70 different width, or emacs doesn't know what width it was saved at, then it may
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
71 ask whether it should reformat. Actually it does not ask by default; it just
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
72 goes ahead and fills. But if you want it to ask, you can set the variable
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
73 <fixed>enriched-fill-after-visiting</fixed> to <fixed>'ask</fixed>.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
74
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
75
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
76 In the future, other modes such as mail and news may recognize messages that are
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
77 enriched text, and automatically call on <bold>enriched</bold> to display them for you.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
78
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
79
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
80 </indent><bold>WHAT IS ENCODED</bold>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
81
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
82
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
83 <indent>Aside from the text itself, various properties are saved. More will eventually
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
84 be added, so that you will be able to save and read just about anything that can
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
85 be displayed in an emacs frame. Following is the list of properties that are
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
86 currently understood; each is covered in more detail below.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
87
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
88
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
89 <bold>Faces:</bold> default, <bold>bold</bold>, <italic>italic</italic>, <underline>underline</underline>, <fixed>fixed</fixed>, etc.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
90
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
91 <bold>Colors:</bold> <x-color><param>red</param><x-bg-color><param>DarkSlateGray</param>any</x-bg-color></x-color><x-bg-color><param>DarkSlateGray</param><x-color><param>orange</param>thing</x-color> <x-color><param>yellow</param>your</x-color><x-color><param>green</param> screen</x-color><x-color><param>blue</param> </x-color><x-color><param>light blue</param>can</x-color><x-color><param>violet</param> display... </x-color></x-bg-color>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
92
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
93 <bold>Newlines:</bold> <indent>Which ones are real ("hard") newlines, and which can be changed to fit
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
94 lines into the ma</indent>rgins.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
95
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
96 <bold>Margins:</bold> can be indented on the left or right.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
97
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
98 <bold>Justification </bold><indent>(whether lines should be flush with the left margin, the right
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
99 margin, fully justified, centered, or left alo</indent>ne).
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
100
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
101 <bold>Excerpts: "</bold><excerpt>For quoted material." </excerpt>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
102
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
103 <bold>Read-only</bold> regions.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
104
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
105
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
106 </indent><bold>FACES
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
107
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
108
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
109 </bold><indent>The easiest way to add a face to a region is to use the <bold>facemenu </bold>package. This
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
110 defines a menu obtained by clicking the right mouse button while holding the
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
111 control key. For example, to make a word boldface, you could select the word by
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
112 double-clicking on it, then hold C-mouse-3 and select <italic>Bold</italic> from the <italic>Face
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
113 </italic></indent>sub-menu<indent>. Selecting a face from the menu when the region is not active will apply
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
114 that face to whatever you type next.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
115
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
116
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
117 </indent><bold>NEWLINES and PARAGRAPHS
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
118
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
119
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
120 </bold><indent><italic>Text/enriched</italic> format distinguishes between <underline>hard</underline> newlines and <underline>soft </underline>newlines. Hard
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
121 newlines are used to separate paragraphs, or items in a list, or anywhere that
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
122 must be a line break no matter what the margins are. Soft newlines are the ones
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
123 inserted in order to fit text between the margins. Auto-fill-mode and
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
124 enriched-mode's fill functions insert soft newlines as necessary, but hard
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
125 newlines are only inserted by direct request, such as using the return key or the
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
126 <fixed>C-o (open-line)</fixed> function.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
127
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
128
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
129 </indent><bold>INDENTATION
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
130
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
131
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
132 </bold><indent>Indentation of regions of the document can be flexibly controlled. The face menu
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
133 contains an <italic>Indent</italic> item, which indents the region by the width of 4 characters
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
134 and an <italic>UnIndent </italic>item which removes 4 character-widths of indentation. All of the
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
135 text paragraphs in this file are singly indented relative to the headings, for
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
136 example. In addition, you can indent and unindent the <italic>right </italic>margin though use of
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
137 the <italic>IndentRight</italic> and <italic>UnindentRight </italic>menu items. The indentation commands can be
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
138 used repeatedly to get further levels of indentation. There are also shortcut
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
139 commands to set the left and right margins directly.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
140
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
141 The basic editing commands in enriched-mode have been modified as necessary to
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
142 maintain proper indentation, but if it gets messed up, you can use <fixed>C-q</fixed> to
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
143 reformat the current paragraph. This may be necessary, for example, after
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
144 yanking or pasting text into the buffer. Eventually all commands should respect
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
145 indentation. <flushleft><indentright><indentright><indentright><indentright>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
146
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
147
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
148 </indentright>Not <indent>only whole paragraphs can be indented, but in fact any region.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
149 This makes it possible to have hanging-indents on paragraphs like
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
150 this one: it was accomplished by selecting the region starting
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
151 after the first word of the paragraph and going to the end of the
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
152 paragraph, and indenting that. </indent></indentright></indentright></indentright><indent>Also notice that this paragraph had been
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
153 indented on the right until the beginning of this sentence, when it resumed
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
154 normal w</indent>i</flushleft></indent><flushleft>dth.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
155
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
156
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
157 <bold>JUSTIFICATION<indent>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
158
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
159
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
160 </indent></bold></flushleft><indent><nofill>Several styles of justification are possible, the simplest being <italic>unfilled.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
161 </italic>This means that your lines will be left as you write them.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
162 This paragraph, for instance, is unfilled.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
163 It was written with one sentence on a line.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
164 <bold>Enriched </bold>will not change that, no matter what size display it is shown on.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
165 There is no hard/soft newline distinction in unfilled text.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
166
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
167 The most common (for English) style is <italic>FlushLeft. </italic>This means
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
168 lines are aligned at the left margin but left uneven at the
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
169 right.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
170
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
171 </nofill><italic><flushright>FlushRight</flushright></italic><flushright>, as you may have guessed, makes each line flush with the right margin,
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
172 but not necessarily the left.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
173
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
174 This is usually, but by no means necessarily, used for headings.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
175
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
176 This paragraph is FlushRight.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
177
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
178
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
179 </flushright><italic><flushboth>FlushBoth </flushboth></italic><flushboth>regions, which are sometimes called "fully justified" (or, confusingly,
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
180 "right justified") are aligned evenly on both edges, so that the text on the page
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
181 has a smooth appearance as in a book or newspaper article. Unfortunately this
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
182 does not look as nice with a fixed-width font as it does in a
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
183 proportionally-spaced printed document; the extra spaces that are needed on the
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
184 screen can make it hard to read. <indentright><indentright><indentright><indentright>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
185
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
186
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
187 <indent><indent><indent><indent>The narrower the column, the uglier <italic>FlushBoth
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
188 </italic>text will be. If you think <italic>flushboth </italic>paragraphs
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
189 look pretty, though, you can set
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
190 <fixed>enriched-default-justification </fixed>to <fixed>'both </fixed>to
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
191 justify everything that is not otherwise
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
192 specified.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
193
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
194
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
195 </indent></indent></indent></indent></indentright></indentright></indentright></indentright></flushboth><bold><center>Center
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
196
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
197 </center></bold><center>You can probably guess what <italic>center </italic>justification is for.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
198
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
199 The normal center-paragraph key, M-S, can be used to turn on center justification
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
200 in enriched-mode. M-j also brings up a justification menu.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
201
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
202
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
203 </center><flushboth>Note that justification can only be changed for complete paragraphs (ie, a
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
204 justified region must start and end at hard newlines). The menu items in the
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
205 "Justification" menu will all operate on the current paragraph, or, if the region
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
206 is active, on all paragraphs which are inside or overlapping the region.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
207
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
208
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
209 </flushboth></indent><bold>EXCERPTS</bold>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
210
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
211
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
212 <excerpt><indent>This is an example of an excerpt. You can use them for quoted parts of other
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
213 people's email messages and the like. Currently it just displays as italics
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
214 (unless some <bold>other</bold> style is in effect), but this can be changed (see
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
215 <underline>Customization</underline> below). </indent></excerpt>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
216
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
217
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
218 <bold>DEBUGGING</bold>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
219
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
220
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
221 <indent>The function <fixed>enriched-show-codes</fixed> can be helpful in figuring out what is going if
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
222 things don't seem to be working. The function can highlight (with a blue or gray
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
223 background) various items of interest. </indent>Type <fixed>C<indent>-c C-s</indent></fixed><indent>, then what should be
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
224 highlighted:
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
225
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
226
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
227 <indent><bold>indent:<indent> </indent></bold><indent>Highlight the indentation at the beginning of each line. </indent>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
228
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
229 <bold>margin: </bold>Highlight regions that are indented.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
230
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
231 <bold>newline: </bold>Highlight hard newlines.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
232
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
233 <bold>none: </bold>Turn off all highlighting. <bold><excerpt>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
234
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
235
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
236 </excerpt></bold></indent></indent><bold>CUSTOMIZATION
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
237
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
238
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
239 </bold><indent>-<indent> Set the default faces to things you like. The faces named <fixed>fixed </fixed>and <excerpt>excerpt,
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
240 </excerpt>especially, can be set to your liking. </indent>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
241
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
242 - <indent>User-preference variables: <fixed>enriched-default-right-margin,
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
243 enriched-default-justification, enriched-verbose,
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
244 enriched-auto-save-interval</fixed><bold>, </bold>and <fixed>enriched-fill-after-visiting </fixed>(mentioned
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
245 above)<bold>. </bold>See their documentation for det</indent>ails.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
246
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
247 - <indent>You can add annotations for your own text properties by making additions to
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
248 <fixed>enriched-annotation-alist</fixed>. Note that the standard requires you to name your
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
249 annotation starting<italic> "x-" </italic>(as in <italic>"x-read-only"</italic>). Please send me any such
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
250 additions that you think might be of general interest so that I can include
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
251 them in the distribution.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
252
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
253 </indent>- <indent>My eventual hope is that people will use the basic code in this file to
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
254 implement more of the various file formats that are in common use, so that
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
255 emacs will understand them all and be able to edit them with a common
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
256 interface. If you are interested in taking on the project of implementing a
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
257 format, let me know. The code attempts to be as general as possible; a lot
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
258 of different formats can be defined just by setting up the lists of
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
259 properties to save and how to represent them in the file.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
260
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
261
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
262 </indent></indent><bold>TO-DO LIST
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
263
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
264
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
265 </bold><indent><italic>[Feel free to work on these and send me the results!] </italic>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
266
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
267 - Be more tolerant of malformed files.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
268
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
269 - Make the indentation work more seamlessly and robustly:
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
270
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
271 <indent>+ Create<indent> an aggressive auto-fill function that will keep the paragraph
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
272 properly filled all the time, without slowing down editing too much. </indent>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
273
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
274 + Refill after yank.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
275
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
276 + <indent>Make deleting a newline also delete the indentation following it. </indent>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
277
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
278 + Never let point enter indentation??
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
279
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
280 +<indent> Optional never-let-things-get-unfilled (ok for fast terminals). </indent>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
281
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
282 </indent>- Do the right thing for insert-file.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
283
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
284 - Notice and re-fill when window changes widths (optionally). - Nicer formatting
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
285 for excerpts.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
286
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
287 - Interface w/ GNUS, VM, RMAIL.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
288
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
289 - For documentation, make INFO aware of text/enriched format.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
290
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
291 -<indent> Have another set of alists for reading and writing RTF, etc (this will take
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
292 work not only on the alists, of course, but also on the code for interpreting
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
293 them).
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
294
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
295
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
296
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
297 </indent></indent><bold>Final Notes:
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
298
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
299
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
300 </bold><indent>The MIME standard is defined in internet RFC 1521; text/enriched is defined in
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
301 RFC 1563. Details on obtaining these documents via FTP or email may be obtained
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
302 by sending an email message to <fixed>rfc-info@isi.edu</fixed> with the message body:
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
303
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
304 <indent> <fixed>help: ways_to_get_rfcs </fixed> </indent>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
305
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
306
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
307 This code and documentation is under development. The most current version
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
308 should always be available from:
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
309
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
310 <indent><fixed>/anonymous@cs.rochester.edu:pub/boris/enriched.shar</fixed>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
311
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
312 </indent>It is helpful to make sure you have the newest version before reporting a bug.
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
313
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
314 </indent>Please send any and all comments to:
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
315
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
316
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
317 <bold><x-color><param>blue</param>Boris Goldowsky </x-color></bold><fixed><<boris@cs.rochester.edu></fixed><x-color><param>blue</param>
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
318
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
319 October 1994
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
320
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
321
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
322
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
323
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
324
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
325
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
326
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
327
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
328
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
329
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
330
721cc180810c Initial revision
Boris Goldowsky <boris@gnu.org>
parents:
diff changeset
331 </x-color>