GNU bug report logs -
#32200
27.0.50; ^L characters gets auto-deleted on actions like indent-region, newline after ^L, etc.
Previous Next
Reported by: Kaushal Modi <kaushal.modi <at> gmail.com>
Date: Wed, 18 Jul 2018 18:40:02 UTC
Severity: normal
Tags: fixed, patch
Found in version 27.0.50
Done: Noam Postavsky <npostavs <at> gmail.com>
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 32200 in the body.
You can then email your comments to 32200 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32200
; Package
emacs
.
(Wed, 18 Jul 2018 18:40:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Kaushal Modi <kaushal.modi <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Wed, 18 Jul 2018 18:40:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hello,
I find this regression from emacs 26.1. It can be very easily reproduced in
emacs -Q:
1. emacs -Q
2. Press C-q C-l in the scratch buffer (this will insert the ^L character)
3. Now hit RET, that character will go away.
3-alternative: Select a region that contains that ^L char and do C-M-\
(indent-region). That char will get deleted again.
This regression is evident in all my emacs-lisp packages, because the ^L
chars used to separate the sections disappear when I auto-indent the whole
package.
In GNU Emacs 27.0.50 (build 7, x86_64-pc-linux-gnu, GTK+ Version 2.24.23)
of 2018-07-16
Repository revision: 46d7c786324f98e73b7615fbc9515ce9a14fa5d4
Windowing system distributor 'The X.Org Foundation', version 11.0.60900000
System Description: Red Hat Enterprise Linux Workstation release 6.8
(Santiago)
Configured using:
'configure --with-modules
--prefix=/home/kmodi/usr_local/apps/6/emacs/master
'--program-transform-name=s/^ctags$/ctags_emacs/'
--enable-checking=yes,glyphs --enable-check-lisp-object-type
'CPPFLAGS=-I/home/kmodi/usr_local/6/include -I/usr/include/freetype2
-I/usr/include' 'CFLAGS=-ggdb3 -O0' 'CXXFLAGS=-ggdb3 -O0'
'LDFLAGS=-L/home/kmodi/usr_local/6/lib -L/home/kmodi/usr_local/6/lib64
-ggdb3''
Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS NOTIFY
ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK2 X11 MODULES THREADS
Important settings:
value of $LANG: en_US.UTF-8
value of $XMODIFIERS: @im=none
locale-coding-system: utf-8-unix
--
Kaushal Modi
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32200
; Package
emacs
.
(Wed, 18 Jul 2018 23:17:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 32200 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
tags 32200 + patch
quit
Kaushal Modi <kaushal.modi <at> gmail.com> writes:
> Hello,
>
> I find this regression from emacs 26.1. It can be very easily reproduced in
> emacs -Q:
>
> 1. emacs -Q
> 2. Press C-q C-l in the scratch buffer (this will insert the ^L character)
> 3. Now hit RET, that character will go away.
> 3-alternative: Select a region that contains that ^L char and do C-M-\
> (indent-region). That char will get deleted again.
>
> This regression is evident in all my emacs-lisp packages, because the ^L
> chars used to separate the sections disappear when I auto-indent the whole
> package.
Ah, another weird quirk of indent-line-to. How about this:
[v1-0001-Preserve-nonblank-whitespace-when-indenting-Bug-3.patch (text/x-diff, inline)]
From ded0a965022c57b61641f87be852e0451583823d Mon Sep 17 00:00:00 2001
From: Noam Postavsky <npostavs <at> gmail.com>
Date: Wed, 18 Jul 2018 19:11:23 -0400
Subject: [PATCH v1] Preserve nonblank whitespace when indenting (Bug#32200)
* lisp/indent.el (indent-line-to): Remove only spaces and tabs, not
any whitespace syntax characters.
---
lisp/indent.el | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/lisp/indent.el b/lisp/indent.el
index f7da0767dc..339d9cbe9a 100644
--- a/lisp/indent.el
+++ b/lisp/indent.el
@@ -292,7 +292,8 @@ indent-line-to
"Indent current line to COLUMN.
This function removes or adds spaces and tabs at beginning of line
only if necessary. It leaves point at end of indentation."
- (back-to-indentation)
+ (beginning-of-line 1)
+ (skip-chars-forward " \t")
(let ((cur-col (current-column)))
(cond ((< cur-col column)
(if (>= (- column (* (/ cur-col tab-width) tab-width)) tab-width)
@@ -303,8 +304,10 @@ indent-line-to
(delete-region (progn (move-to-column column t) (point))
;; The `move-to-column' call may replace
;; tabs with spaces, so we can't reuse the
- ;; previous `back-to-indentation' point.
- (progn (back-to-indentation) (point)))))))
+ ;; previous start point.
+ (progn (beginning-of-line 1)
+ (skip-chars-forward " \t")
+ (point)))))))
(defun current-left-margin ()
"Return the left margin to use for this line.
--
2.11.0
Added tag(s) patch.
Request was from
Noam Postavsky <npostavs <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Wed, 18 Jul 2018 23:17:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32200
; Package
emacs
.
(Thu, 19 Jul 2018 12:41:02 GMT)
Full text and
rfc822 format available.
Message #13 received at 32200 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hello Noam,
On Wed, Jul 18, 2018 at 7:16 PM Noam Postavsky <npostavs <at> gmail.com> wrote:
> tags 32200 + patch
> quit
>
> Ah, another weird quirk of indent-line-to. How about this:
>
Thanks for the prompt patch! That fix works for me.
--
Kaushal Modi
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32200
; Package
emacs
.
(Sun, 22 Jul 2018 15:11:01 GMT)
Full text and
rfc822 format available.
Message #16 received at 32200 <at> debbugs.gnu.org (full text, mbox):
tags 32200 fixed
close 32200
quit
Kaushal Modi <kaushal.modi <at> gmail.com> writes:
> Thanks for the prompt patch! That fix works for me.
Pushed to master.
[1: 8217998b0d]: 2018-07-22 10:52:48 -0400
Preserve nonblank whitespace when indenting (Bug#32200)
https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=8217998b0d59ec491116250c6a10f46052a21ef8
Added tag(s) fixed.
Request was from
Noam Postavsky <npostavs <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Sun, 22 Jul 2018 15:11:03 GMT)
Full text and
rfc822 format available.
bug closed, send any further explanations to
32200 <at> debbugs.gnu.org and Kaushal Modi <kaushal.modi <at> gmail.com>
Request was from
Noam Postavsky <npostavs <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Sun, 22 Jul 2018 15:11:03 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Mon, 20 Aug 2018 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 6 years and 306 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.