From: "Ilya N. Golubev" <gin@mo.msk.ru>
Cc: Jerry James <james@xemacs.org>, xemacs-beta@xemacs.org
Subject: field movement fix [Re: comint loses prompt boundary]
Date: Tue, 12 Dec 2006 21:08:34 +0300 [thread overview]
Message-ID: <82odq9aswt.fsf@mo.msk.ru> (raw)
In-Reply-To: 87slflasys.fsf@mo.msk.ru
Fixing what described on Thu, 07 Sep 2006 00:32:13 +0400 in
<16k64g20tu.fsf@mo.msk.ru> (<comint loses prompt boundary>) in emacs
cvs head (as of 2006-11-23) as follows. This also makes comint, shell
conform to documentation as suggested in <87slflasys.fsf@mo.msk.ru>.
Cc-ing to Jerry James, <xemacs-beta> since the broken code from emacs
was merged into xemacs packages `comint.el' revision 1.14 of
2006/05/25 02:49:47 +0, and they were among recipients of the original
report.
lisp/ChangeLog
* comint.el (comint-line-beginning-position): Fix undocumented
dependency on `inhibit-field-text-motion' value: do the same
regardless of how this user option is set.
etc/ChangeLog
* NEWS (Fixed to respects fields): New.
(Comint changes): In here.
--- lisp/comint.el 2006-11-23 15:55:54.000000000 +0300
+++ lisp/comint.el 2006-12-07 02:53:38.794286184 +0300
@@ -1953,7 +1953,8 @@
;; if there are two fields on a line, then the first one is the
;; prompt, and the second one is an input field, and is front-sticky
;; (as input fields should be).
- (constrain-to-field (line-beginning-position) (line-end-position))))
+ (let ((inhibit-field-text-motion nil))
+ (constrain-to-field (line-beginning-position) (line-end-position)))))
(defun comint-bol (&optional arg)
"Go to the beginning of line, then skip past the prompt, if any.
--- etc/NEWS 2006-11-23 15:55:51.000000000 +0300
+++ etc/NEWS 2006-12-07 05:10:21.731250216 +0300
@@ -21,6 +21,39 @@
so we will look at it and add it to the manual.
\f
+* Incompatible Editing Changes in local gin branch.
+
+** Fixed comint commands to respect fields.
+
+As described in <Fixed `comint-line-beginning-position' to respects
+fields> section. This includes, but not limited to `comint-bol',
+`comint-insert-previous-argument', `comint-backward-matching-input',
+`comint-bol-or-process-mark', `comint-previous-matching-input',
+`comint-send-input', `comint-copy-old-input',
+`shell-backward-command', `shell-dynamic-complete-command' (including
+inside `comint-dynamic-complete' in Shell mode).
+
+\f
+* Incompatible Lisp Changes in local gin branch.
+
+** Fixed `comint-line-beginning-position' to respect fields.
+
+As controlled by `inhibit-field-text-motion'. This fixed myriads of
+other functions and commands that depend on it and that rely on it to
+always do so, regardless of `inhibit-field-text-motion' user option,
+at least when `comint-use-prompt-regexp' is `nil'. Partial list of
+these commands is in <Fixed comint commands to respects fields>
+section. However, other code certainly may rely on old behavior.
+Have not seen such a code to date.
+
+Introduced in upstream just after addition of (extant) field
+implementation of 2000-01-01.
+
+Other non- interactive functions calling it include
+`comint-replace-by-expanded-history-before-point',
+`comint-get-old-input-default'.
+
+\f
* Installation Changes in Emacs 22.1
---
@@ -1461,6 +1494,37 @@
that need to know whether they are started inside Emacs should check
INSIDE_EMACS instead of EMACS.
+*** Fixed to respects fields.
+
+As controlled by `inhibit-field-text-motion'. As bug fix, certainly
+incompatible with buggy behavior.
+
+**** Lisp changes.
+
+The core change is in `comint-line-beginning-position'. This fixed
+myriads of other functions and commands that depend on it and that
+rely on it to always do so, regardless of `inhibit-field-text-motion'
+user option, at least when `comint-use-prompt-regexp' is `nil'.
+Partial list of these commands is in <Editing changes> section.
+However, other code certainly may rely on old behavior. Have not seen
+such a code to date.
+
+Introduced in upstream emacs just after addition of (extant) field
+implementation of 2000-01-01.
+
+Other non- interactive functions calling it include
+`comint-replace-by-expanded-history-before-point',
+`comint-get-old-input-default'.
+
+**** Editing changes.
+
+Include, but not limited to `comint-bol',
+`comint-insert-previous-argument', `comint-backward-matching-input',
+`comint-bol-or-process-mark', `comint-previous-matching-input',
+`comint-send-input', `comint-copy-old-input',
+`shell-backward-command', `shell-dynamic-complete-command' (including
+inside `comint-dynamic-complete' in Shell mode).
+
** M-x Compile changes:
---
next prev parent reply other threads:[~2006-12-12 18:08 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-06 20:32 comint loses prompt boundary Ilya N. Golubev
2006-09-06 20:41 ` comint loses prompt boundary in cvs, too Ilya N. Golubev
[not found] ` <E1GLRDD-0000mS-2D@fencepost.gnu.org>
[not found] ` <59ejumjzz2.fsf@mo.msk.ru>
[not found] ` <E1GLjTm-0000cp-DO@fencepost.gnu.org>
[not found] ` <843bazvd1b.fsf@mo.msk.ru>
[not found] ` <comint_field_movement_fix@mo.msk.ru>
2006-12-12 18:07 ` shell completion documentation [Re: comint loses prompt boundary] Ilya N. Golubev
2006-12-12 18:08 ` Ilya N. Golubev [this message]
2006-12-15 16:11 ` field movement fix: `NEWS' change Ilya N. Golubev
2006-12-14 5:29 ` shell completion documentation [Re: comint loses prompt boundary] Richard Stallman
2006-12-14 17:51 ` shell completion documentation Ilya N. Golubev
2006-12-15 21:24 ` Richard Stallman
2006-12-15 23:48 ` bug reports vs manuals [Re: shell completion documentation] Ilya N. Golubev
2006-12-16 20:04 ` shell completion documentation Richard Stallman
2006-12-18 19:06 ` Ilya N. Golubev
2006-12-20 13:00 ` Richard Stallman
2006-12-20 20:59 ` what makes read it? [Re: shell completion documentation] Ilya N. Golubev
[not found] ` <mailman.1817.1166000505.2155.bug-gnu-emacs@gnu.org>
2006-12-13 15:39 ` shell completion documentation [Re: comint loses prompt boundary] Miles Bader
2006-12-13 18:07 ` Ilya N. Golubev
2006-12-14 3:49 ` Miles Bader
2006-12-15 23:48 ` comint loses prompt boundary Ilya N. Golubev
2006-08-24 17:15 ` checking for fields Ilya N. Golubev
2006-08-25 20:25 ` Richard Stallman
[not found] ` <02473b3c6f4154-gin@mo.msk.ru>
[not found] ` <02473b40868335-gin@mo.msk.ru>
2006-08-28 17:47 ` Ilya N. Golubev
2006-08-29 11:47 ` Richard Stallman
2006-08-29 20:30 ` pretest downloads [Re: checking for fields] Ilya N. Golubev
2006-08-30 17:58 ` Richard Stallman
2006-12-18 15:56 ` customizing inhibit-field-text-motion [Re: comint loses prompt boundary] Ilya N. Golubev
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=82odq9aswt.fsf@mo.msk.ru \
--to=gin@mo.msk.ru \
--cc=james@xemacs.org \
--cc=xemacs-beta@xemacs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).