GNU bug report logs -
#16453
24.3.50; Motion functions not respecting field boundaries as documented
Previous Next
Reported by: Drew Adams <drew.adams <at> oracle.com>
Date: Wed, 15 Jan 2014 16:18:02 UTC
Severity: normal
Found in version 24.3.50
Done: Bastien <bzg <at> altern.org>
Bug is archived. No further changes may be made.
Full log
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
(elisp) `Introduction to Minibuffers' says this:
The text in the minibuffer always starts with the "prompt string",
the text that was specified by the program that is using the minibuffer
to tell the user what sort of input to type. This text is marked
read-only so you won't accidentally delete or change it. It is also
marked as a field (*note Fields::), so that certain motion functions,
including `beginning-of-line', `forward-word', `forward-sentence', and
`forward-paragraph', stop at the boundary between the prompt and the
actual text.
So I would expect that `backward-word' and `backward-sexp' would stop at
the field boundary, which is the end of the prompt. `beginning-of-line'
does indeed do this, as the doc suggests. But `backward-word' and
`backward-sexp', at least, do not - they move backward into the prompt.
Seems like this is the wrong behavior, and the doc describes the right
behavior. But perhaps it is the other way around and this is a doc bug.
FWIW, I noticed this because I use a different Lisp symbol completion
function in the minibuffer. It moves `backward-sexp' and later tries to
delete the text corresponding to the symbol prefix to be completed. If
that prefix is empty then it raises the error of attempting to modify
read-only text. If `backward-sexp' did what the doc says then it would
not leave the field and enter the prompt. This is not important to the
bug report - just mentioning how I happened to notice this.
In GNU Emacs 24.3.50.1 (i686-pc-mingw32)
of 2014-01-07 on ODIEONE
Bzr revision: 115916 bzg <at> gnu.org-20140107233629-du2solx6tmxnx0np
Windowing system distributor `Microsoft Corp.', version 6.1.7601
Configured using:
`configure --prefix=/c/Devel/emacs/binary --enable-checking=yes,glyphs
'CFLAGS=-O0 -g3' LDFLAGS=-Lc:/Devel/emacs/lib
CPPFLAGS=-Ic:/Devel/emacs/include'
This bug report was last modified 11 years and 170 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.