GNU bug report logs - #11053
batch mode line motion

Previous Next

Package: emacs;

Reported by: Reuben Thomas <rrt <at> sc3d.org>

Date: Tue, 20 Mar 2012 20:19:02 UTC

Severity: normal

Tags: notabug

Merged with 11266

Found in version 24.0.94

Done: Chong Yidong <cyd <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 11053 in the body.
You can then email your comments to 11053 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#11053; Package emacs. (Tue, 20 Mar 2012 20:19:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Reuben Thomas <rrt <at> sc3d.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 20 Mar 2012 20:19:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Reuben Thomas <rrt <at> sc3d.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.0.94;
	When run with --batch, Emacs seems to start with point on the second
	line of the given file
Date: Tue, 20 Mar 2012 19:47:37 +0000
I noticed this when running the GNU Zile tests, which are also run on
Emacs to ensure that Zile is slavishly following Emacs's behavior.

Here is an interactive test test.el:

; end-of-line backward-word backward-word a save-buffer save-buffers-kill-emacs
(execute-kbd-macro "\C-e\M-b\M-ba\C-x\C-s\C-x\C-c")

which is run on the following input:

--- Cut here ---
Here is a sample file.
It has several lines.

And more than one paragraph.
--- Cut here ---

and should produce the following output:

--- Cut here ---
Here is a asample file.
It has several lines.

And more than one paragraph.
--- Cut here ---

but actually produces the following output:

--- Cut here ---
Here is a sample file.
It has aseveral lines.

And more than one paragraph.
--- Cut here ---

when run as:

emacs --no-init-file input --load test.el --batch --quick

but produces the correct output when run as:

emacs --no-init-file input --load test.el --quick

Up to Emacs 24.0.50, it produces the correct output either way.


In GNU Emacs 24.0.94.2 (x86_64-unknown-linux-gnu, GTK+ Version 2.24.10)
 of 2012-03-20 on skwd
Windowing system distributor `The X.Org Foundation', version 11.0.11103000
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: en_GB.UTF-8
  value of $LC_CTYPE: en_GB.UTF-8
  value of $LC_MESSAGES: en_GB.UTF-8
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_GB.UTF-8
  value of $XMODIFIERS: @im=none
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: CPerl

Minor modes in effect:
  TeX-PDF-mode: t
  diff-auto-refine-mode: t
  flymake-mode: t
  flyspell-mode: t
  recentf-mode: t
  show-paren-mode: t
  server-mode: t
  savehist-mode: t
  minibuffer-electric-default-mode: t
  iswitchb-mode: t
  icomplete-mode: t
  global-whitespace-mode: t
  global-auto-revert-mode: t
  desktop-save-mode: t
  tooltip-mode: t
  mouse-wheel-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
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
C-p C-p C-p C-p C-p C-p C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-x C-f t e s <tab> i n t e <tab> r <backspace> 
b a c k w a <tab> o <tab> <backspace> <backspace> w 
<backspace> - w o <tab> e <tab> <return> C-n <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <left> " ) ; C-x C-s <backspace> 
<backspace> <backspace> <right> <right> <right> <right> 
<right> <right> <right> <right> " ) ; C-x C-s <backspace> 
<backspace> <backspace> <right> <right> <left> " ) 
; C-x C-s <backspace> <backspace> <backspace> C-x C-s 
C-x b r u n <help-echo> C-g C-x C-f <M-backspace> r 
u n <tab> <return> M-> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <help-echo> <down-mouse-1> <mouse-1> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
C-x C-s C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ 
C-x C-s <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> SPC " - n w " , C-x C-s C-_ 
C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-x C-s 
C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-_ C-x C-s 
SPC " - - b a t c h " , C-x C-s M-x e m a c s - b u 
g - <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> r e p o r t - e r m a c s <backspace> <backspace> 
<backspace> <backspace> = <backspace> <backspace> m 
a c s - b u g <return>

Recent messages:
Saving file /home/rrt/Software/zile-stable/tests/run-lisp-tests.pl...
Wrote /home/rrt/Software/zile-stable/tests/run-lisp-tests.pl
Undo! [12 times]
Saving file /home/rrt/Software/zile-stable/tests/run-lisp-tests.pl...
Wrote /home/rrt/Software/zile-stable/tests/run-lisp-tests.pl
Redo! [11 times]
Saving file /home/rrt/Software/zile-stable/tests/run-lisp-tests.pl...
Wrote /home/rrt/Software/zile-stable/tests/run-lisp-tests.pl
Saving file /home/rrt/Software/zile-stable/tests/run-lisp-tests.pl...
Wrote /home/rrt/Software/zile-stable/tests/run-lisp-tests.pl

Load-path shadows:
/home/rrt/.emacs.d/elpa/dictionary-1.8.7/dictionary-init hides /usr/local/share/emacs/24.0.94/site-lisp/dictionary-el/dictionary-init
/home/rrt/.emacs.d/elpa/dictionary-1.8.7/dictionary hides /usr/local/share/emacs/24.0.94/site-lisp/dictionary-el/dictionary
/home/rrt/.emacs.d/elpa/dictionary-1.8.7/link hides /usr/local/share/emacs/24.0.94/site-lisp/dictionary-el/link
/home/rrt/.emacs.d/elpa/dictionary-1.8.7/connection hides /usr/local/share/emacs/24.0.94/site-lisp/dictionary-el/connection
/home/rrt/local/share/emacs/site-lisp/dict hides /usr/local/share/emacs/24.0.94/site-lisp/emacs-goodies-el/dict
/usr/local/share/emacs/24.0.94/site-lisp/auctex/tex-style hides /usr/share/emacs/site-lisp/auctex/tex-style
/usr/local/share/emacs/24.0.94/site-lisp/auctex/tex-mik hides /usr/share/emacs/site-lisp/auctex/tex-mik
/usr/local/share/emacs/24.0.94/site-lisp/auctex/multi-prompt hides /usr/share/emacs/site-lisp/auctex/multi-prompt
/usr/local/share/emacs/24.0.94/site-lisp/auctex/tex-jp hides /usr/share/emacs/site-lisp/auctex/tex-jp
/usr/local/share/emacs/24.0.94/site-lisp/auctex/tex-info hides /usr/share/emacs/site-lisp/auctex/tex-info
/usr/local/share/emacs/24.0.94/site-lisp/auctex/latex hides /usr/share/emacs/site-lisp/auctex/latex
/usr/local/share/emacs/24.0.94/site-lisp/auctex/tex hides /usr/share/emacs/site-lisp/auctex/tex
/usr/local/share/emacs/24.0.94/site-lisp/auctex/texmathp hides /usr/share/emacs/site-lisp/auctex/texmathp
/usr/local/share/emacs/24.0.94/site-lisp/auctex/context-nl hides /usr/share/emacs/site-lisp/auctex/context-nl
/usr/local/share/emacs/24.0.94/site-lisp/auctex/tex-font hides /usr/share/emacs/site-lisp/auctex/tex-font
/usr/local/share/emacs/24.0.94/site-lisp/auctex/toolbar-x hides /usr/share/emacs/site-lisp/auctex/toolbar-x
/usr/local/share/emacs/24.0.94/site-lisp/auctex/tex-buf hides /usr/share/emacs/site-lisp/auctex/tex-buf
/usr/local/share/emacs/24.0.94/site-lisp/auctex/tex-fptex hides /usr/share/emacs/site-lisp/auctex/tex-fptex
/usr/local/share/emacs/24.0.94/site-lisp/auctex/bib-cite hides /usr/share/emacs/site-lisp/auctex/bib-cite
/usr/local/share/emacs/24.0.94/site-lisp/auctex/context-en hides /usr/share/emacs/site-lisp/auctex/context-en
/usr/local/share/emacs/24.0.94/site-lisp/auctex/tex-fold hides /usr/share/emacs/site-lisp/auctex/tex-fold
/usr/local/share/emacs/24.0.94/site-lisp/auctex/tex-bar hides /usr/share/emacs/site-lisp/auctex/tex-bar
/usr/local/share/emacs/24.0.94/site-lisp/auctex/context hides /usr/share/emacs/site-lisp/auctex/context
/usr/local/share/emacs/24.0.94/site-lisp/auctex/font-latex hides /usr/share/emacs/site-lisp/auctex/font-latex

Features:
(shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev
gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util
mail-prsvr mail-utils doc-view jka-compr dired arc-mode archive-mode
apache-mode vc-dispatcher vc-svn cperl-mode preview prv-emacs tex-buf
noutline outline font-latex latex tex-style tex warnings diff-git
diff-mode inform-mode js byte-opt bytecomp byte-compile cconv macroexp
json imenu thingatpt newcomment cc-mode cc-fonts cc-guess cc-menus
cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs sgml-mode
nxml-uchnm rng-xsd xsd-regexp rng-cmpct image-mode rng-nxml rng-valid
rng-loc rng-uri rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn
nxml-ns nxml-mode nxml-outln nxml-rap nxml-util nxml-glyph nxml-enc
xmltok css-mode lua-mode autoconf autoconf-mode flymake compile comint
ansi-color ring vc-git face-remap flyspell smart-quotes make-mode
regexp-opt auto-dictionary-autoloads c-eldoc-autoloads
dictionary-autoloads diff-git-autoloads dired-isearch-autoloads
full-ack-autoloads guess-style-autoloads kill-ring-search-autoloads
magit-autoloads mv-shell-autoloads tumble-autoloads
http-post-simple-autoloads package tabulated-list completing-help
recentf tree-widget wid-edit uniquify paren server savehist
minibuf-eldef iswitchb icomplete whitespace autorevert desktop cus-start
cus-load ropemacs pymacs go-mode-load ispell advice advice-preload
yasnippet help-fns derived edmacro kmacro easymenu assoc cl
muse-autoloads emacs-goodies-el emacs-goodies-custom
emacs-goodies-loaddefs easy-mmode preview-latex tex-site auto-loads
user-site-loaddefs time-date tooltip ediff-hook vc-hooks lisp-float-type
mwheel x-win x-dnd tool-bar dnd fontset image fringe lisp-mode register
page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core frame cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew
greek romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs
button faces cus-face files text-properties overlay sha1 md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty emacs)

-- 
http://rrt.sc3d.org/




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11053; Package emacs. (Tue, 20 Mar 2012 21:56:01 GMT) Full text and rfc822 format available.

Message #8 received at 11053 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Reuben Thomas <rrt <at> sc3d.org>
Cc: 11053 <at> debbugs.gnu.org
Subject: Re: bug#11053: 24.0.94;
	When run with --batch, Emacs seems to start with point on the second
	line of the given file
Date: Tue, 20 Mar 2012 17:24:33 -0400
Reuben Thomas wrote:

> Here is an interactive test test.el:
>
> ; end-of-line backward-word backward-word a save-buffer save-buffers-kill-emacs
> (execute-kbd-macro "\C-e\M-b\M-ba\C-x\C-s\C-x\C-c")

I think a clearer test case is:

(message "%s" (point))
(what-line)
(move-end-of-line 1)
(message "%s" (point))
(what-line)

which gives the same result for me in 22.1 through to the current trunk;

1
Line 1
45
Line 2

and the "right" result if inhibit-point-motion-hooks is non-nil:

1
Line 1
23
Line 1

> when run as:
>
> emacs --no-init-file input --load test.el --batch --quick
>
> but produces the correct output when run as:
>
> emacs --no-init-file input --load test.el --quick
>
> Up to Emacs 24.0.50, it produces the correct output either way.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11053; Package emacs. (Tue, 20 Mar 2012 22:00:02 GMT) Full text and rfc822 format available.

Message #11 received at 11053 <at> debbugs.gnu.org (full text, mbox):

From: Reuben Thomas <rrt <at> sc3d.org>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 11053 <at> debbugs.gnu.org
Subject: Re: bug#11053: 24.0.94; When run with --batch, Emacs seems to start
	with point on the second line of the given file
Date: Tue, 20 Mar 2012 21:29:07 +0000
On 20 March 2012 21:24, Glenn Morris <rgm <at> gnu.org> wrote:
> Reuben Thomas wrote:
>
>> Here is an interactive test test.el:
>>
>> ; end-of-line backward-word backward-word a save-buffer save-buffers-kill-emacs
>> (execute-kbd-macro "\C-e\M-b\M-ba\C-x\C-s\C-x\C-c")
>
> I think a clearer test case is:
>
> (message "%s" (point))
> (what-line)
> (move-end-of-line 1)
> (message "%s" (point))
> (what-line)

Thanks for that!

> which gives the same result for me in 22.1 through to the current trunk;
>
> 1
> Line 1
> 45
> Line 2
>
> and the "right" result if inhibit-point-motion-hooks is non-nil:
>
> 1
> Line 1
> 23
> Line 1
>
>> Up to Emacs 24.0.50, it produces the correct output either way.

I was going on a single report that the expected result was obtained
in 24.0.50, which I didn't verify.

-- 
http://rrt.sc3d.org




Changed bug title to 'batch mode line motion' from '24.0.94; When run with --batch, Emacs seems to start with point on the second line of the given file' Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Tue, 20 Mar 2012 23:28:02 GMT) Full text and rfc822 format available.

Merged 11053 11266. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Tue, 17 Apr 2012 17:40:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11053; Package emacs. (Wed, 18 Apr 2012 07:05:02 GMT) Full text and rfc822 format available.

Message #18 received at 11053 <at> debbugs.gnu.org (full text, mbox):

From: Chong Yidong <cyd <at> gnu.org>
To: Reuben Thomas <rrt <at> sc3d.org>
Cc: 11053 <at> debbugs.gnu.org
Subject: Re: bug#11053: 24.0.94;
	When run with --batch, Emacs seems to start with point on the second
	line of the given file
Date: Wed, 18 Apr 2012 15:04:16 +0800
Reuben Thomas <rrt <at> sc3d.org> writes:

> I noticed this when running the GNU Zile tests, which are also run on
> Emacs to ensure that Zile is slavishly following Emacs's behavior.
>
> Here is an interactive test test.el:
>
> (execute-kbd-macro "\C-e\M-b\M-ba\C-x\C-s\C-x\C-c")

The visual line motion commands won't work in batch mode, because the
screen size is not defined in batch mode.  I changed line-move to use
forward-line in batch mode, which is as good an approximation as we are
likely to get.




bug closed, send any further explanations to 11053 <at> debbugs.gnu.org and Reuben Thomas <rrt <at> sc3d.org> Request was from Chong Yidong <cyd <at> gnu.org> to control <at> debbugs.gnu.org. (Wed, 18 Apr 2012 07:06:01 GMT) Full text and rfc822 format available.

Added tag(s) notabug. Request was from Stefan Monnier <monnier <at> IRO.UMontreal.CA> to control <at> debbugs.gnu.org. (Wed, 18 Apr 2012 21:47:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11053; Package emacs. (Thu, 19 Apr 2012 07:57:02 GMT) Full text and rfc822 format available.

Message #25 received at 11053 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
To: Chong Yidong <cyd <at> gnu.org>
Cc: 11053 <at> debbugs.gnu.org, Reuben Thomas <rrt <at> sc3d.org>
Subject: Re: bug#11053: 24.0.94;
	When run with --batch, Emacs seems to start with point on the second
	line of the given file
Date: Thu, 19 Apr 2012 03:55:59 -0400
> The visual line motion commands won't work in batch mode, because the
> screen size is not defined in batch mode.  I changed line-move to use
> forward-line in batch mode, which is as good an approximation as we are
> likely to get.

Wouldn't it be better to change the motion commands instead?


        Stefan




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 17 May 2012 11:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 11 years and 355 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.