Starting with emacs -Q, enter the following in a buffer:
ALLCAPS lowercase Titlecase
Move point to the beginning of the first word, and do a query-replace-regexp with the following target:
\(\sw+\)
and the following replacement:
\,(capitalize \1)
Expected result:
Allcaps Lowercase Titlecase
What I get instead:
ALLCAPS Lowercase Titlecase
Calling capitalize-word interactively works as expected.
Using query-replace-regexp with upcase instead of capitalize works as expected, producing: ALLCAPS LOWERCASE TITLECASE
Using query-replace-regexp with downcase instead of capitalize is also broken, producing no visible change:
ALLCAPS lowercase Titlecase
In GNU Emacs 24.0.50.1 (i686-pc-linux-gnu, GTK+ Version 2.24.4) of 2011-08-08 on smithty-laptop Windowing system distributor `The X.Org Foundation', version 11.0.11001000
Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil
value of $LANG: en_CA.UTF-8 value of $XMODIFIERS: nil locale-coding-system: utf-8-unix default enable-multibyte-characters: t
Major mode: Fundamental
Minor modes in effect: tooltip-mode: t
mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t
auto-compression-mode: t line-number-mode: t transient-mark-mode: t
Recent input: c a s e <return> n n n n n <down> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <left> <left> <left>
<left> <left> <left> <left> M-c M-c M-c M-c M-c M-c M-c <up> <up> <up> <up> <up> <up> <up> <left> <left> <left> <left> <left> <left> <left> <left> C-M-% <return>
C-g C-a C-M-% <up> <up> <return> <up> <up> <right> <right> <right> M-d u p c a s e <return> C-g C-M-, C-M-< <left> <left> <left> <left> <left> <left> <left>
<left> C-M-% <return> C-g <left> <left> <left> <left> <left> <left> <left> <left> <left> C-M-% <left> <left> <left> <left> <left> <left> <left> <left> <left> <left>
<left> <left> <left> C-d C-d <up> <up> <return> <up> <up> <right> <right> <right> M-d d o w n c a s e <return> n n C-g <up> <up> <left> <left> <left> <left> <left>
<left> C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k A L L C A P S SPC l o w e r c a s e SPC t i t l <backspace> <backspace> <backspace> <backspace> T i t l e C a s e <backspace> <backspace> <backspace>
<backspace> c a s e C-a C-k C-y <return> C-y <return> C-y C-u <return> C-y C-/ C-/ C-/ C-/ C-/ C-/ C-a <down> <return> <up> C-M-% <return> y y y C-/ C-/ C-/ C-/
C-/ C-/ <up> <down> C-/ <up> C-M-% <up> <up> <return> <up> <up> <right> <right> <right> M-d u p c a s e <return> y y y C-/ C-/ C-/ C-a C-M-% <up> <up> <return> <up>
<up> <right> <right> <right> M-d c a p i t a l i z e <return> y y y C-/ C-/ C-/ C-/ M-x e w p o <backspace> <backspace> <backspace> <backspace> r e p o r t <tab>
<return>
Recent messages: Undo! [4 times] Redo! [3 times] Mark set Replaced 3 occurrences Undo! [3 times] Mark set Replaced 3 occurrences Undo! [3 times] Redo! Auto-saving...