GNU bug report logs - #23730
24.5; format removes text properties

Previous Next

Package: emacs;

Reported by: ynyaaa <at> gmail.com

Date: Wed, 8 Jun 2016 13:43:02 UTC

Severity: normal

Found in version 24.5

Fixed in version 26.1

Done: Glenn Morris <rgm <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 23730 in the body.
You can then email your comments to 23730 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#23730; Package emacs. (Wed, 08 Jun 2016 13:43:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to ynyaaa <at> gmail.com:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Wed, 08 Jun 2016 13:43:02 GMT) Full text and rfc822 format available.

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

From: ynyaaa <at> gmail.com
To: bug-gnu-emacs <at> gnu.org
Subject: 24.5; format removes text properties
Date: Wed, 08 Jun 2016 22:41:46 +0900
`format' may remove text properties.
Second form is an example.

(format (propertize "%d" 'face '(:background "red")) 1)
=>#("1" 0 1 (face (:background "red")))

(format (propertize "%2d" 'face '(:background "red")) 1)
=>" 1"

(format (propertize "%02d" 'face '(:background "red")) 1)
=>#("01" 0 2 (face (:background "red")))




In GNU Emacs 24.5.1 (i686-pc-mingw32)
 of 2015-04-11 on LEG570
Windowing system distributor `Microsoft Corp.', version 6.0.6002
Configured using:
 `configure --prefix=/c/usr --host=i686-pc-mingw32'

Important settings:
  value of $LANG: JPN
  locale-coding-system: cp932

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  electric-indent-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 messages:

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util help-fns mail-prsvr mail-utils time-date japan-util tooltip
electric uniquify ediff-hook vc-hooks lisp-float-type mwheel dos-w32
ls-lisp w32-common-fns disp-table w32-win w32-vars tool-bar dnd fontset
image regexp-opt fringe tabulated-list newcomment lisp-mode prog-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 nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote make-network-process
w32notify w32 multi-tty emacs)

Memory information:
((conses 8 76884 6016)
 (symbols 32 17447 0)
 (miscs 32 38 127)
 (strings 16 10667 4075)
 (string-bytes 1 268458)
 (vectors 8 10181)
 (vector-slots 4 462567 3812)
 (floats 8 57 124)
 (intervals 28 266 22)
 (buffers 508 12))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#23730; Package emacs. (Wed, 08 Jun 2016 16:57:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: ynyaaa <at> gmail.com
Cc: 23730 <at> debbugs.gnu.org
Subject: Re: bug#23730: 24.5; format removes text properties
Date: Wed, 08 Jun 2016 19:57:10 +0300
> From: ynyaaa <at> gmail.com
> Date: Wed, 08 Jun 2016 22:41:46 +0900
> 
> 
> `format' may remove text properties.
> Second form is an example.
> 
> (format (propertize "%d" 'face '(:background "red")) 1)
> =>#("1" 0 1 (face (:background "red")))
> 
> (format (propertize "%2d" 'face '(:background "red")) 1)
> =>" 1"
> 
> (format (propertize "%02d" 'face '(:background "red")) 1)
> =>#("01" 0 2 (face (:background "red")))

Why did you expect the properties of the format specifier to be
preserved?  The documentation only promises that the characters
_other_ than the format specifier are copied with their properties,
but makes no such promises about the specifier.

IOW, this is the intended behavior.  If you want the result of the
conversion to have some properties, you should propertize the return
value.




Added tag(s) notabug and wontfix. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Thu, 09 Jun 2016 01:15:02 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 23730 <at> debbugs.gnu.org and ynyaaa <at> gmail.com Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Thu, 09 Jun 2016 01:15:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#23730; Package emacs. (Thu, 09 Jun 2016 02:08:01 GMT) Full text and rfc822 format available.

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

From: ynyaaa <at> gmail.com
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 23730 <at> debbugs.gnu.org
Subject: Re: bug#23730: 24.5; format removes text properties
Date: Thu, 09 Jun 2016 11:07:01 +0900
Eli Zaretskii <eliz <at> gnu.org> writes:

>The documentation only promises that the characters
>_other_ than the format specifier are copied with their properties,

Text properties after the format spericifier are copied
with wrong positions.

(format (concat (propertize "%2d" 'x 'X)
                (propertize "a" 'a 'A)
                (propertize "b" 'b 'B))
        1)
=>#(" 1ab" 0 1 (a A) 1 2 (b B))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#23730; Package emacs. (Thu, 09 Jun 2016 13:55:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: ynyaaa <at> gmail.com
Cc: 23730-done <at> debbugs.gnu.org
Subject: Re: bug#23730: 24.5; format removes text properties
Date: Thu, 09 Jun 2016 16:54:50 +0300
> From: ynyaaa <at> gmail.com
> Cc: 23730 <at> debbugs.gnu.org
> Date: Thu, 09 Jun 2016 11:07:01 +0900
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> >The documentation only promises that the characters
> >_other_ than the format specifier are copied with their properties,
> 
> Text properties after the format spericifier are copied
> with wrong positions.
> 
> (format (concat (propertize "%2d" 'x 'X)
>                 (propertize "a" 'a 'A)
>                 (propertize "b" 'b 'B))
>         1)
> =>#(" 1ab" 0 1 (a A) 1 2 (b B))

Fixed on the master branch, thanks.  Fixing this also corrected your
originally reported issue, so I made it clear in the documentation
that the text properties from the format specifiers are also copied.




bug Marked as fixed in versions 25.2. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Thu, 09 Jun 2016 15:43:01 GMT) Full text and rfc822 format available.

Removed tag(s) wontfix and notabug. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Thu, 09 Jun 2016 15:43:01 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. (Fri, 08 Jul 2016 11:24:04 GMT) Full text and rfc822 format available.

bug unarchived. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Sun, 04 Dec 2016 02:50:11 GMT) Full text and rfc822 format available.

bug Marked as fixed in versions 26.1. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Sun, 04 Dec 2016 02:50:11 GMT) Full text and rfc822 format available.

bug No longer marked as fixed in versions 25.2. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Sun, 04 Dec 2016 02:50:11 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. (Sun, 01 Jan 2017 12:24:12 GMT) Full text and rfc822 format available.

This bug report was last modified 8 years and 166 days ago.

Previous Next


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