Commit 1be208c2 authored by Paul Eggert's avatar Paul Eggert

Prefer straight quoting in some etc text files

These files are plain text and might be used by non-Emacs apps.
They’re mostly ASCII, so just use straight quotes.
parent 582222b5
This diff is collapsed.
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
-- -- -- --
---------------------------------------------------------------------- ----------------------------------------------------------------------
"Is it legal for a `struct interval' to have a total_length field of "Is it legal for a 'struct interval' to have a total_length field of
zero?" zero?"
"We can't be arrested for it as far as I know, but it is definitely "We can't be arrested for it as far as I know, but it is definitely
invalid for an interval to have zero length." invalid for an interval to have zero length."
...@@ -131,7 +131,7 @@ have escaped John's notice." ...@@ -131,7 +131,7 @@ have escaped John's notice."
Re: patch for woman (woman-topic-at-point) Re: patch for woman (woman-topic-at-point)
"Sorry for the long message. I wanted to make the problem clear "Sorry for the long message. I wanted to make the problem clear
also for people not familiar with `woman'." also for people not familiar with 'woman'."
"Most hackers, I take? "Most hackers, I take?
For a moment there I thought you had a patch that you could put on For a moment there I thought you had a patch that you could put on
a woman, and it would make her come right to the topic at point a woman, and it would make her come right to the topic at point
......
...@@ -20,7 +20,7 @@ copy and change it--those freedoms are what "free software" means. ...@@ -20,7 +20,7 @@ copy and change it--those freedoms are what "free software" means.
The precise conditions for copying and modification are stated in the The precise conditions for copying and modification are stated in the
document "GNU General Public License," a copy of which is required to document "GNU General Public License," a copy of which is required to
be distributed with every copy of GNU Emacs. It is usually in a file be distributed with every copy of GNU Emacs. It is usually in a file
named `COPYING' in the same directory as this file. These conditions named 'COPYING' in the same directory as this file. These conditions
are designed to make sure that everyone who has a copy of GNU Emacs are designed to make sure that everyone who has a copy of GNU Emacs
(including modified versions) has the freedom to redistribute and (including modified versions) has the freedom to redistribute and
change it. change it.
...@@ -32,12 +32,12 @@ online store at http://shop.fsf.org. ...@@ -32,12 +32,12 @@ online store at http://shop.fsf.org.
Emacs has been run on GNU/Linux, FreeBSD, NetBSD, OpenBSD, and on many Emacs has been run on GNU/Linux, FreeBSD, NetBSD, OpenBSD, and on many
Unix systems, on a variety of types of cpu, as well as on MSDOS, Unix systems, on a variety of types of cpu, as well as on MSDOS,
Windows and MacOS. See the file `etc/MACHINES' in the Emacs Windows and MacOS. See the file 'etc/MACHINES' in the Emacs
distribution for a full list of machines that GNU Emacs has been tested distribution for a full list of machines that GNU Emacs has been tested
on, with machine-specific installation notes and warnings. on, with machine-specific installation notes and warnings.
GNU Emacs is distributed with no warranty (see the General Public GNU Emacs is distributed with no warranty (see the General Public
License for full details, in the file `COPYING' in this directory (see License for full details, in the file 'COPYING' in this directory (see
above)), and neither I nor the Free Software Foundation promises any above)), and neither I nor the Free Software Foundation promises any
kind of support or assistance to users. The foundation keeps a list kind of support or assistance to users. The foundation keeps a list
of people who are willing to offer support and assistance for hire. of people who are willing to offer support and assistance for hire.
...@@ -73,7 +73,7 @@ you can contribute. ...@@ -73,7 +73,7 @@ you can contribute.
Your donations will help to support the development of additional GNU Your donations will help to support the development of additional GNU
software. GNU/Linux systems (variants of GNU, based on the kernel software. GNU/Linux systems (variants of GNU, based on the kernel
Linux) have millions of users, but there is still much to be done. Linux) have millions of users, but there is still much to be done.
For more information on GNU, see the file `GNU' in this directory (see For more information on GNU, see the file 'GNU' in this directory (see
above). above).
Richard M Stallman Richard M Stallman
......
...@@ -88,7 +88,7 @@ that match it, Emacs then looks for an tag whose implicit tag name ...@@ -88,7 +88,7 @@ that match it, Emacs then looks for an tag whose implicit tag name
matches the request. etags.c uses implicit tag names when possible, in matches the request. etags.c uses implicit tag names when possible, in
order to reduce the size of the tags file. order to reduce the size of the tags file.
An implicit tag name is deduced from the pattern by discarding the An implicit tag name is deduced from the pattern by discarding the
last character if it is one of ` \f\t\n\r()=,;', then taking all the last character if it is one of ' \f\t\n\r()=,;', then taking all the
rightmost consecutive characters in the pattern which are not one of rightmost consecutive characters in the pattern which are not one of
those. those.
......
...@@ -16,7 +16,7 @@ met: ...@@ -16,7 +16,7 @@ met:
contributors may be used to endorse or promote products derived contributors may be used to endorse or promote products derived
from this software without specific prior written permission. from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
......
...@@ -10,12 +10,12 @@ Information about older releases, and platforms that are no longer ...@@ -10,12 +10,12 @@ Information about older releases, and platforms that are no longer
supported, has been removed. Consult older versions of this file if supported, has been removed. Consult older versions of this file if
you are interested in this information. you are interested in this information.
The `configure' script uses the configuration name, and the results of The 'configure' script uses the configuration name, and the results of
testing the system, to decide which options to use in src/config.h and testing the system, to decide which options to use in src/config.h and
elsewhere (eg Makefiles). elsewhere (eg Makefiles).
If you add support for a new configuration, add a section to this If you add support for a new configuration, add a section to this
file, and edit the `configure.ac' source as needed. file, and edit the 'configure.ac' source as needed.
Some obsolete platforms are unsupported beginning with Emacs 23.1. See Some obsolete platforms are unsupported beginning with Emacs 23.1. See
the list at the end of this file. the list at the end of this file.
...@@ -90,9 +90,9 @@ the list at the end of this file. ...@@ -90,9 +90,9 @@ the list at the end of this file.
On Solaris, do not use /usr/ucb/cc. Use /opt/SUNWspro/bin/cc. Make On Solaris, do not use /usr/ucb/cc. Use /opt/SUNWspro/bin/cc. Make
sure that /usr/ccs/bin and /opt/SUNWspro/bin are in your PATH before sure that /usr/ccs/bin and /opt/SUNWspro/bin are in your PATH before
/usr/ucb. (Most free software packages have the same requirement on /usr/ucb. (Most free software packages have the same requirement on
Solaris.) With this compiler, use `/opt/SUNWspro/bin/cc -E' as the Solaris.) With this compiler, use '/opt/SUNWspro/bin/cc -E' as the
preprocessor. If this inserts extra whitespace into its output (see preprocessor. If this inserts extra whitespace into its output (see
the PROBLEMS file) then add the option `-Xs'. the PROBLEMS file) then add the option '-Xs'.
To build a 64-bit Emacs (with larger maximum buffer size) on a To build a 64-bit Emacs (with larger maximum buffer size) on a
Solaris system which supports 64-bit executables, specify the -m64 Solaris system which supports 64-bit executables, specify the -m64
......
This diff is collapsed.
...@@ -3,8 +3,6 @@ with Emacs. This includes some text files of documentation for GNU ...@@ -3,8 +3,6 @@ with Emacs. This includes some text files of documentation for GNU
Emacs or of interest to Emacs users, and the file of dumped docstrings Emacs or of interest to Emacs users, and the file of dumped docstrings
for Emacs functions and variables. for Emacs functions and variables.
`forms-d2.dat' is an example data file used by forms-d2.el.
COPYRIGHT AND LICENSE INFORMATION FOR IMAGE FILES COPYRIGHT AND LICENSE INFORMATION FOR IMAGE FILES
File: emacs.icon File: emacs.icon
......
...@@ -27,38 +27,38 @@ in every character you type). ...@@ -27,38 +27,38 @@ in every character you type).
Emacs supports certain termcap strings that are not described in the Emacs supports certain termcap strings that are not described in the
4.2 manual but appear to be standard in system V. The one exception 4.2 manual but appear to be standard in system V. The one exception
is `cS', which I invented. is 'cS', which I invented.
`AL' insert several lines. Takes one parameter, the number of 'AL' insert several lines. Takes one parameter, the number of
lines to be inserted. You specify how to send this parameter lines to be inserted. You specify how to send this parameter
using a %-construct, just like the cursor positions in the `cm' using a %-construct, just like the cursor positions in the 'cm'
string. string.
`DL' delete several lines. One parameter. 'DL' delete several lines. One parameter.
`IC' insert several characters. One parameter. 'IC' insert several characters. One parameter.
`DC' delete several characters. One parameter. 'DC' delete several characters. One parameter.
`rp' repeat a character. Takes two parameters, the character 'rp' repeat a character. Takes two parameters, the character
to be repeated and the number of times to repeat it. to be repeated and the number of times to repeat it.
Most likely you will use `%.' for sending the character Most likely you will use '%.' for sending the character
to be repeated. Emacs interprets a padding spec with a * to be repeated. Emacs interprets a padding spec with a *
as giving the amount of padding per repetition. as giving the amount of padding per repetition.
WARNING: Many terminals have a command to repeat the WARNING: Many terminals have a command to repeat the
*last character output* N times. This means that the character *last character output* N times. This means that the character
will appear N+1 times in a row when the command argument is N. will appear N+1 times in a row when the command argument is N.
However, the `rp' string's parameter is the total number of However, the 'rp' string's parameter is the total number of
times wanted, not one less. Therefore, such repeat commands times wanted, not one less. Therefore, such repeat commands
may be used in an `rp' string only if you use Emacs's special may be used in an 'rp' string only if you use Emacs's special
termcap operator `%a-c\001' to subtract 1 from the repeat count termcap operator '%a-c\001' to subtract 1 from the repeat count
before substituting it into the string. It is probably safe before substituting it into the string. It is probably safe
to use this even though the Unix termcap does not accept it to use this even though the Unix termcap does not accept it
because programs other than Emacs probably won't look for `rp' because programs other than Emacs probably won't look for 'rp'
anyway. anyway.
`cs' set scroll region. Takes two parameters, the vertical 'cs' set scroll region. Takes two parameters, the vertical
positions of the first line to include in the scroll region positions of the first line to include in the scroll region
and the last line to include in the scroll region. and the last line to include in the scroll region.
Both parameters are origin-zero. The effect of this Both parameters are origin-zero. The effect of this
...@@ -68,18 +68,18 @@ is `cS', which I invented. ...@@ -68,18 +68,18 @@ is `cS', which I invented.
This is not the same convention that Emacs version 16 used. This is not the same convention that Emacs version 16 used.
That is because I was led astray by unclear documentation That is because I was led astray by unclear documentation
of the meaning of %i in termcap strings. Since the termcap of the meaning of %i in termcap strings. Since the termcap
documentation for `cs' is also unclear, I had to deduce the documentation for 'cs' is also unclear, I had to deduce the
correct parameter conventions from what would make the VT-100's correct parameter conventions from what would make the VT-100's
`cs' string work properly. From an incorrect assumption about 'cs' string work properly. From an incorrect assumption about
%i, I reached an incorrect conclusion about `cs', but the result %i, I reached an incorrect conclusion about 'cs', but the result
worked correctly on the VT100 and ANSI terminals. In Emacs worked correctly on the VT100 and ANSI terminals. In Emacs
version 17, both `cs' and %i work correctly. version 17, both 'cs' and %i work correctly.
The version 16 convention was to pass, for the second parameter, The version 16 convention was to pass, for the second parameter,
the line number of the first line beyond the end of the the line number of the first line beyond the end of the
scroll region. scroll region.
`cS' set scroll region. Differs from `cs' in taking parameters 'cS' set scroll region. Differs from 'cs' in taking parameters
differently. There are four parameters: differently. There are four parameters:
1. Total number of lines on the screen. 1. Total number of lines on the screen.
2. Number of lines above desired scroll region. 2. Number of lines above desired scroll region.
...@@ -87,22 +87,22 @@ is `cS', which I invented. ...@@ -87,22 +87,22 @@ is `cS', which I invented.
4. Total number of lines on the screen, like #1. 4. Total number of lines on the screen, like #1.
This is because an Ambassador needs the parameters like this. This is because an Ambassador needs the parameters like this.
`cr', `do', `le' 'cr', 'do', 'le'
Emacs will not attempt to use ^M, ^J or ^H for cursor motion Emacs will not attempt to use ^M, ^J or ^H for cursor motion
unless these capabilities are present and say to use those unless these capabilities are present and say to use those
characters. characters.
`km' Says the terminal has a Meta key. 'km' Says the terminal has a Meta key.
Defining these strings is important for getting maximum performance Defining these strings is important for getting maximum performance
from your terminal. from your terminal.
Make sure that the `ti' string sets all modes needed for editing Make sure that the 'ti' string sets all modes needed for editing
in Emacs. For example, if your terminal has a mode that controls in Emacs. For example, if your terminal has a mode that controls
wrap at the end of the line, you must decide whether to specify wrap at the end of the line, you must decide whether to specify
the `am' flag in the termcap entry; whichever you decide, the `ti' the 'am' flag in the termcap entry; whichever you decide, the 'ti'
string should contain commands to set the mode that way. string should contain commands to set the mode that way.
(Emacs also sends the `vs' string after the `ti' string. (Emacs also sends the 'vs' string after the 'ti' string.
You can put the mode-setting commands in either one of them.) You can put the mode-setting commands in either one of them.)
*** Specific Terminal Types *** *** Specific Terminal Types ***
...@@ -111,13 +111,13 @@ Watch out for termcap entries for Ann Arbor Ambassadors that ...@@ -111,13 +111,13 @@ Watch out for termcap entries for Ann Arbor Ambassadors that
give too little padding for clear-screen. 7.2 msec per line is right. give too little padding for clear-screen. 7.2 msec per line is right.
These are the strings whose padding you probably should change: These are the strings whose padding you probably should change:
:al=1*\E[L:dl=1*\E[M:cd=7.2*\E[J:cl=7.2*\E[H\E[J: :al=1*\E[L:dl=1*\E[M:cd=7.2*\E[J:cl=7.2*\E[H\E[J:
I have sometimes seen `\E[2J' at the front of the `ti' string; I have sometimes seen '\E[2J' at the front of the 'ti' string;
this is a clear-screen, very slow, and it can cause you to get this is a clear-screen, very slow, and it can cause you to get
Control-s sent by the terminal at startup. I recommend removing Control-s sent by the terminal at startup. I recommend removing
the `\E[2J' from the `ti' string. the '\E[2J' from the 'ti' string.
The `ti' or `vs' strings also usually need stuff added to them, such as The 'ti' or 'vs' strings also usually need stuff added to them, such as
\E[>33;52;54h\E[>30;37;38;39l \E[>33;52;54h\E[>30;37;38;39l
You might want to add the following to the `te' or `ve' strings: You might want to add the following to the 'te' or 've' strings:
\E[>52l\E[>37h \E[>52l\E[>37h
The following additional capabilities will improve performance: The following additional capabilities will improve performance:
:AL=1*\E[%dL:DL=1*\E[%dM:IC=4\E[%d@:DC=4\E[%dP:rp=1*%.\E[%a-c\001%db: :AL=1*\E[%dL:DL=1*\E[%dM:IC=4\E[%d@:DC=4\E[%dP:rp=1*%.\E[%a-c\001%db:
...@@ -126,20 +126,20 @@ If you find that the Meta key does not work, make sure that ...@@ -126,20 +126,20 @@ If you find that the Meta key does not work, make sure that
is present in the termcap entry. is present in the termcap entry.
Watch out for termcap entries for VT100's that fail to specify Watch out for termcap entries for VT100's that fail to specify
the `sf' string, or that omit the padding needed for the `sf' and `sr' the 'sf' string, or that omit the padding needed for the 'sf' and 'sr'
strings (2msec per line affected). What you need is strings (2msec per line affected). What you need is
:sf=2*^J:sr=2*\EM:cs=\E[%i%d;%dr: :sf=2*^J:sr=2*\EM:cs=\E[%i%d;%dr:
The Concept-100 and Concept-108 have many modes that `ti' strings The Concept-100 and Concept-108 have many modes that 'ti' strings
often fail to initialize. If you have problems on one of these often fail to initialize. If you have problems on one of these
terminals, that is probably the place to fix them. These terminals terminals, that is probably the place to fix them. These terminals
can support an `rp' string. can support an 'rp' string.
Watch out on HP terminals for problems with standout disappearing on Watch out on HP terminals for problems with standout disappearing on
part of the mode line. These problems are due to the absence of part of the mode line. These problems are due to the absence of
:sg#0: which some HP terminals need. :sg#0: which some HP terminals need.
The vi55 is said to require `ip=2'. The vi55 is said to require 'ip=2'.
The Sun console should have these capabilities for good performance. The Sun console should have these capabilities for good performance.
:AL=\E[%dL:DL=\E[%dM:IC=\E[%d@:DC=\E[%dP: :AL=\E[%dL:DL=\E[%dM:IC=\E[%d@:DC=\E[%dP:
...@@ -154,16 +154,16 @@ commands to turn off flow control: ...@@ -154,16 +154,16 @@ commands to turn off flow control:
define port flow control disable define port flow control disable
On System V, in the terminfo database, various terminals may have On System V, in the terminfo database, various terminals may have
the `xt' flag that should not have it. `xt' should be present only the 'xt' flag that should not have it. 'xt' should be present only
for the Teleray 1061 or equivalent terminal. for the Teleray 1061 or equivalent terminal.
In particular, System V for the 386 often has `xt' for terminal type In particular, System V for the 386 often has 'xt' for terminal type
AT386 or AT386-M, which is used for the console. You should delete AT386 or AT386-M, which is used for the console. You should delete
this flag. Here is how: this flag. Here is how:
You can get a copy of the terminfo "source" for at386 using the You can get a copy of the terminfo "source" for at386 using the
command: `infocmp at386 >at386.tic'. Edit the file at386.tic and remove command: 'infocmp at386 >at386.tic'. Edit the file at386.tic and remove
the `xt' flag. Then compile the new entry with: `tic at386.tic'. the 'xt' flag. Then compile the new entry with: 'tic at386.tic'.
It is also reported that these terminal types sometimes have the wrong It is also reported that these terminal types sometimes have the wrong
reverse-scroll string. It should be \E[T, but sometimes is given as \E[S. reverse-scroll string. It should be \E[T, but sometimes is given as \E[S.
......
...@@ -32,19 +32,19 @@ Change src/bytecode.c so that calls from byte-code functions to byte-code ...@@ -32,19 +32,19 @@ Change src/bytecode.c so that calls from byte-code functions to byte-code
functions don't go through Ffuncall/funcall_lambda/exec_byte_code but instead functions don't go through Ffuncall/funcall_lambda/exec_byte_code but instead
stay within exec_byte_code. stay within exec_byte_code.
** Add new `switch' byte-code ** Add new 'switch' byte-code
This byte-code would take one argument from the stack (the object to test) This byte-code would take one argument from the stack (the object to test)
and one argument from the constant-pool (a switch table, implemented as an and one argument from the constant-pool (a switch table, implemented as an
eq-hashtable) and would jump to the "label" contained in the hashtable. eq-hashtable) and would jump to the "label" contained in the hashtable.
Then add a `case' special-form that can be compiled to this byte-code. Then add a 'case' special-form that can be compiled to this byte-code.
This would behave just like cl-case, but instead of expanding to cond+eq it This would behave just like cl-case, but instead of expanding to cond+eq it
would be its own special form and would be compiled specially. would be its own special form and would be compiled specially.
Then change pcase to use `case' when applicable. Then change pcase to use 'case' when applicable.
Then change the byte-compiler to recognize (cond ((eq x 'foo) bar) ...) Then change the byte-compiler to recognize (cond ((eq x 'foo) bar) ...)
and turn it into a `case' for more efficient execution. and turn it into a 'case' for more efficient execution.
** Improve the byte-compiler to recognize immutable (lexical) bindings ** Improve the byte-compiler to recognize immutable (lexical) bindings
and get rid of them if they're used only once and/or they're bound to and get rid of them if they're used only once and/or they're bound to
...@@ -54,7 +54,7 @@ Such things aren't present in hand-written code, but macro expansion and ...@@ -54,7 +54,7 @@ Such things aren't present in hand-written code, but macro expansion and
defsubst can often end up generating things like defsubst can often end up generating things like
(funcall (lambda (arg) (body)) actual) which then get optimized to (funcall (lambda (arg) (body)) actual) which then get optimized to
(let ((arg actual)) (body)) but should additionally get optimized further (let ((arg actual)) (body)) but should additionally get optimized further
when `actual' is a constant/copyable expression. when 'actual' is a constant/copyable expression.
** Add an "indirect goto" byte-code and use it for local lambda expressions. ** Add an "indirect goto" byte-code and use it for local lambda expressions.
E.g. when you have code like E.g. when you have code like
...@@ -64,7 +64,7 @@ E.g. when you have code like ...@@ -64,7 +64,7 @@ E.g. when you have code like
(funcall foo toto) (funcall foo toto)
(blabla (funcall foo titi)))) (blabla (funcall foo titi))))
turn those `funcalls' into jumps and their return into indirect jumps back. turn those 'funcalls' into jumps and their return into indirect jumps back.
** Compile efficiently local recursive functions ** Compile efficiently local recursive functions
...@@ -133,10 +133,10 @@ It can use the same icons as gud. ...@@ -133,10 +133,10 @@ It can use the same icons as gud.
** Check what minor modes don't use define-minor-mode and convert them ** Check what minor modes don't use define-minor-mode and convert them
to use it. to use it.
** Convert all defvars with leading `*' in the doc-strings into defcustoms ** Convert all defvars with leading '*' in the doc-strings into defcustoms
of appropriate :type and :group. of appropriate :type and :group.
** Remove any leading `*'s from defcustom doc-strings. ** Remove any leading '*'s from defcustom doc-strings.
[done?] [A lot of them are in CC Mode.] [done?] [A lot of them are in CC Mode.]
** Remove unnecessary autoload cookies from defcustoms. ** Remove unnecessary autoload cookies from defcustoms.
...@@ -235,8 +235,8 @@ Change them to use report-emacs-bug. ...@@ -235,8 +235,8 @@ Change them to use report-emacs-bug.
** Add a defcustom that supplies a function to name numeric backup files, ** Add a defcustom that supplies a function to name numeric backup files,
like make-backup-file-name-function for non-numeric backup files. like make-backup-file-name-function for non-numeric backup files.
** `dired-mode' should specify the semantics of `buffer-modified-p' for ** 'dired-mode' should specify the semantics of 'buffer-modified-p' for
dired buffers and DTRT WRT `auto-revert-mode'. dired buffers and DTRT WRT 'auto-revert-mode'.
** Check uses of prin1 for error-handling. ** Check uses of prin1 for error-handling.
http://lists.gnu.org/archive/html/emacs-devel/2008-08/msg00456.html http://lists.gnu.org/archive/html/emacs-devel/2008-08/msg00456.html
...@@ -254,18 +254,18 @@ http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00515.html ...@@ -254,18 +254,18 @@ http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00515.html
*** Several text-property planes *** Several text-property planes
This would get us rid of font-lock-face property (and I'd be happy to This would get us rid of font-lock-face property (and I'd be happy to
get rid of char-property-alias-alist as well) since font-lock would get rid of char-property-alias-alist as well) since font-lock would
simply use the `face' property in the `font-lock' plane. simply use the 'face' property in the 'font-lock' plane.
Basically `put-text-property' and friends would take an extra argument PLANE Basically 'put-text-property' and friends would take an extra argument PLANE
(maybe the best backward-compatible way to do that is to make it so that (maybe the best backward-compatible way to do that is to make it so that
PROPERTY can be a cons cell (PLANE . PROP)). So font-lock would PROPERTY can be a cons cell (PLANE . PROP)). So font-lock would
do (put-text-property start end '(font-lock . face) value). do (put-text-property start end '(font-lock . face) value).
All the properties coming from the various planes would get merged via an Elisp All the properties coming from the various planes would get merged via an Elisp
function (so it can merge `face' differently than `keymap' or it could give function (so it can merge 'face' differently than 'keymap' or it could give
different priorities to different planes (we could imagine enabling/disabling different priorities to different planes (we could imagine enabling/disabling
planes)). The merging would not happen lazily while looking up properties but planes)). The merging would not happen lazily while looking up properties but
instead it would take place eagerly in `add-text-properties'. This is based on instead it would take place eagerly in 'add-text-properties'. This is based on
the idea that it's much more frequent to lookup properties than to the idea that it's much more frequent to lookup properties than to
modify them. Also, when properties are looked up during redisplay, we modify them. Also, when properties are looked up during redisplay, we
generally can't run Elisp code, whereas we generally can do that when generally can't run Elisp code, whereas we generally can do that when
...@@ -276,7 +276,7 @@ properties are added. ...@@ -276,7 +276,7 @@ properties are added.
Currently overlays are implemented as (two) sorted singly linked lists (one Currently overlays are implemented as (two) sorted singly linked lists (one
for overlays_before some position and one for overlay_after that for overlays_before some position and one for overlay_after that
position, for some quirky definition of "before" and "after"). position, for some quirky definition of "before" and "after").
The function `overlay-recenter' changes the position used for the split The function 'overlay-recenter' changes the position used for the split
(and is called internally in various situations). (and is called internally in various situations).
Each overlay is itself implemented with two markers (which keep track of Each overlay is itself implemented with two markers (which keep track of
...@@ -418,10 +418,10 @@ from the emacsclient process. ...@@ -418,10 +418,10 @@ from the emacsclient process.
** Give Tar mode all the features of Archive mode. ** Give Tar mode all the features of Archive mode.
** Create a category of errors called `process-error' ** Create a category of errors called 'process-error'
for some or all errors associated with using subprocesses. for some or all errors associated with using subprocesses.
** Maybe reinterpret `parse-error' as a category of errors ** Maybe reinterpret 'parse-error' as a category of errors
and put some other errors under it. and put some other errors under it.
** Make byte-compile warn when a doc string is too wide. ** Make byte-compile warn when a doc string is too wide.
...@@ -436,7 +436,7 @@ from the emacsclient process. ...@@ -436,7 +436,7 @@ from the emacsclient process.
customization buffers. customization buffers.
** Emacs Lisp mode could put an overlay on the defun for every ** Emacs Lisp mode could put an overlay on the defun for every
function that has advice. The overlay could have `after-text' like function that has advice. The overlay could have 'after-text' like
" [Function has advice]". It might look like (defun foo [Function " [Function has advice]". It might look like (defun foo [Function
has advice] (x y) The overlay could also be a button that you could has advice] (x y) The overlay could also be a button that you could
use to view the advice. use to view the advice.
...@@ -455,7 +455,7 @@ from the emacsclient process. ...@@ -455,7 +455,7 @@ from the emacsclient process.
H-S-C-M-s-double-wheel-up, ... H-S-C-M-s-double-wheel-up, ...
** Beefed-up syntax-tables. ** Beefed-up syntax-tables.
*** recognize multi-character syntactic entities like `begin' and `end'. *** recognize multi-character syntactic entities like 'begin' and 'end'.
*** nested string-delimiters (for PostScript's (foo(bar)baz) strings). *** nested string-delimiters (for PostScript's (foo(bar)baz) strings).
*** support for infix operators (with precedence). *** support for infix operators (with precedence).
*** support for the $ (paired delimiter) in parse-partial-sexp. *** support for the $ (paired delimiter) in parse-partial-sexp.
...@@ -559,7 +559,7 @@ from the emacsclient process. ...@@ -559,7 +559,7 @@ from the emacsclient process.
** Make monochrome images display using the foreground and background ** Make monochrome images display using the foreground and background
colors of the applicable faces. colors of the applicable faces.
** Make `format-time-string' preserve text properties like `format'. ** Make 'format-time-string' preserve text properties like 'format'.
** Optionally make the cursor a little thinner at the end of a line ** Optionally make the cursor a little thinner at the end of a line
or the end of the buffer. or the end of the buffer.
...@@ -598,24 +598,24 @@ from the emacsclient process. ...@@ -598,24 +598,24 @@ from the emacsclient process.
the XPMs so that the color versions work generally. (Requires care the XPMs so that the color versions work generally. (Requires care
with the color used for the transparent regions.) with the color used for the transparent regions.)
** Convenient access to the `values' variable. It would be nice to have an ** Convenient access to the 'values' variable. It would be nice to have an
interface that would show you the printed reps of the elements of the interface that would show you the printed reps of the elements of the
list in a menu, let you select one of the values, and put it into some list in a menu, let you select one of the values, and put it into some
other variable, without changing the value of `values'. other variable, without changing the value of 'values'.
** (Controlled by a flag) make open and close syntax match exactly, ** (Controlled by a flag) make open and close syntax match exactly,
i.e. `(' doesn't match `]'. i.e. '(' doesn't match ']'.
** Specify parameter ID-FORMAT in all calls to `file-attributes' and ** Specify parameter ID-FORMAT in all calls to 'file-attributes' and
`directory-files-and-attributes' where attributes UID or GID are used. 'directory-files-and-attributes' where attributes UID or GID are used.
Whenever possible, use value 'string. Whenever possible, use value 'string.
When done, change meaning of default value from 'integer to 'string. When done, change meaning of default value from 'integer to 'string.
If value 'integer is used nowhere, remove the parameter ID-FORMAT from If value 'integer is used nowhere, remove the parameter ID-FORMAT from
the definition of `file-attributes' and `directory-files-and-attributes' the definition of 'file-attributes' and 'directory-files-and-attributes'
and from the calls. and from the calls.
** Make language-info-alist customizable. Currently a user can customize ** Make language-info-alist customizable. Currently a user can customize
only the variable `current-language-environment'. only the variable 'current-language-environment'.
** Improve language environment handling so that Emacs can fit ** Improve language environment handling so that Emacs can fit
better to a users locale. Currently Emacs uses utf-8 language better to a users locale. Currently Emacs uses utf-8 language
...@@ -630,7 +630,7 @@ from the emacsclient process. ...@@ -630,7 +630,7 @@ from the emacsclient process.
characters and phrase boundaries, sentence endings, collation for characters and phrase boundaries, sentence endings, collation for
sorting (at least for unicodes), HTTP Accept-language, patterns for sorting (at least for unicodes), HTTP Accept-language, patterns for
directory listings and compilation messages, yes-or-no replies, directory listings and compilation messages, yes-or-no replies,
common menu items when the toolkit supports it ... `locale-info' common menu items when the toolkit supports it ... 'locale-info'
needs extending for LC_COLLATE &c. [fx started on this.] needs extending for LC_COLLATE &c. [fx started on this.]
** Eliminate the current restriction on header printing by ps-print. ** Eliminate the current restriction on header printing by ps-print.
...@@ -654,7 +654,7 @@ from the emacsclient process. ...@@ -654,7 +654,7 @@ from the emacsclient process.
Info, but also with regard to namespace), and give the value of Info, but also with regard to namespace), and give the value of
lisp expressions, e.g auto-mode-alist, the right face. lisp expressions, e.g auto-mode-alist, the right face.
** Possibly make `list-holidays' eval items in the calendar-holidays variable. ** Possibly make