bug#3312: 23.0.93; Use punctuation syntax for apostrophe in Info

"Drew Adams" <[email protected]>
Newsgroups gmane.emacs.bugs,gmane.emacs.pretest.bugs
Message-ID <[email protected]>
I don't know if this would be appropriate for all Info manuals, but at
least for Emacs, Elisp, Eintr, and Efaq it makes sense, I think.
 
Apostrophe, or single quote, (') currently has word-constituent syntax
in Info, which it inherits from text-mode.
 
This means that if point is inside some `...'  string, and you use
`C-s C-w', you will pick up also the ' at the end as part of the
search string, which is typically not what you want.
 
If the syntax class for ' were `punctuation' instead of `word', then
you could more easily pick up key sequences, function names, and
variable names that are quoted: `C-x C-x' or `char-syntax', for
example.
 
Yes, you can today pick up everything, including the ` and the ', by
positioning the cursor on the `, but if you want just the quoted
content or some suffix of it, and not the quoting delimiters, you
get the ' too, which is not what you want.
 
If this makes sense for all Info manuals, then a simple fix would
presumably be to change this (in the definition of `info-mode'):
 
(set-syntax-table text-mode-syntax-table)
 
To this:
 
(set-syntax-table
  (copy-syntax-table text-mode-syntax-table))
(modify-syntax-entry ?' ".")
 
I don't know much about text-mode, but I wonder if even there it might
make sense for ' to have syntax class `punctuation' instead of
`word'. Probably the answer is "no", or that would already be the
case. ;-)
 
I see this in `text-mode.el':
 ;; We add `p' so that M-c on 'hello' leads to 'Hello'
 ;; rather than 'hello'.
 (modify-syntax-entry ?' "w p" st)
 
That explains why p was added, but not why ' should have syntax class
w at all.  Again, there probably is a good reason, but I don't know
what it is.  After changing the syntax to punctuation, M-c still seems
to act as desired on 'hello'.
 
In GNU Emacs 23.0.93.1 (i386-mingw-nt5.1.2600)
 of 2009-05-02 on SOFT-MJASON
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4)'
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.