unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
@ 2012-11-12  0:35 Drew Adams
  2012-11-12  0:44 ` Juanma Barranquero
  2012-11-12  3:38 ` Eli Zaretskii
  0 siblings, 2 replies; 11+ messages in thread
From: Drew Adams @ 2012-11-12  0:35 UTC (permalink / raw)
  To: 12866

The Info node says this near the top:
 
 In any construct except `%%', you can add a decimal integer after the
 `%' to specify a minimum field width.  If the width is less, the field
 is padded with spaces to the right.
 
From what I can see, it pads with spaces to the left of the field, not
the right.  For example:
 
(set (make-local-variable 'mode-line-position) '("%40l"))
 
It seems to me that that pads the line number with spaces on the left,
not the right.  But perhaps I'm missing something.

In GNU Emacs 24.3.50.1 (i386-mingw-nt5.1.2600)
 of 2012-11-05 on MS-W7-DANI
Bzr revision: 110809 lekktu@gmail.com-20121105172930-a5gn0bwi4lndchhw
Windowing system distributor `Microsoft Corp.', version 5.1.2600
Configured using:
 `configure --with-gcc (4.7) --no-opt --enable-checking --cflags
 -I../../libs/libXpm-3.5.10/include -I../../libs/libXpm-3.5.10/src
 -I../../libs/libpng-1.2.37-lib/include -I../../libs/zlib-1.2.5
 -I../../libs/giflib-4.1.4-1-lib/include
 -I../../libs/jpeg-6b-4-lib/include
 -I../../libs/tiff-3.8.2-1-lib/include
 -I../../libs/libxml2-2.7.8-w32-bin/include/libxml2
 -I../../libs/gnutls-3.0.9-w32-bin/include
 -I../../libs/libiconv-1.9.2-1-lib/include'
 






^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
  2012-11-12  0:35 bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left? Drew Adams
@ 2012-11-12  0:44 ` Juanma Barranquero
  2012-11-12  1:12   ` Drew Adams
  2012-11-12  3:38 ` Eli Zaretskii
  1 sibling, 1 reply; 11+ messages in thread
From: Juanma Barranquero @ 2012-11-12  0:44 UTC (permalink / raw)
  To: Drew Adams; +Cc: 12866

> The Info node says this near the top:
>
>  In any construct except `%%', you can add a decimal integer after the
>  `%' to specify a minimum field width.  If the width is less, the field
>  is padded with spaces to the right.

I think it was meant to say "is padded, with spaces, to the right", or
more clearly, "is padded to the right with spaces".

    Juanma





^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
  2012-11-12  0:44 ` Juanma Barranquero
@ 2012-11-12  1:12   ` Drew Adams
  2012-11-12  1:27     ` Juanma Barranquero
  0 siblings, 1 reply; 11+ messages in thread
From: Drew Adams @ 2012-11-12  1:12 UTC (permalink / raw)
  To: 'Juanma Barranquero'; +Cc: 12866

> >  In any construct except `%%', you can add a decimal 
> >  integer after the`%' to specify a minimum field width.
> >  If the width is less, the field is padded with spaces
> >  to the right.
> 
> I think it was meant to say "is padded, with spaces, to the right", or
> more clearly, "is padded to the right with spaces".

Sorry, I still don't get it.  To me, each of those statements suggests that the
text in the field, in this case the line number indication (e.g. "L25"), gets
padded by adding spaces on the right (i.e., after the text), up to the specified
width.

But what I think I see is that the text gets padded on the left; that is, spaces
are added before (to the left of) the field's text, until it is of the given
width.

E.g., for "%8l":
Field unpadded (i.e., "%l"):  "L25"
Field padded on the left:     "     L25"
Field padded on the right:    "L25     "

"Padding on the right" means adding spaces to the right of the text, AFAIK.  And
I think I am seeing them added to the left of the text.

What am I missing?






^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
  2012-11-12  1:12   ` Drew Adams
@ 2012-11-12  1:27     ` Juanma Barranquero
  2012-11-12  2:29       ` Drew Adams
  0 siblings, 1 reply; 11+ messages in thread
From: Juanma Barranquero @ 2012-11-12  1:27 UTC (permalink / raw)
  To: Drew Adams; +Cc: 12866

> Sorry, I still don't get it.  To me, each of those statements suggests that the
> text in the field, in this case the line number indication (e.g. "L25"), gets
> padded by adding spaces on the right (i.e., after the text), up to the specified
> width.

I'm not native, but to me "padded ON the left/right" suggests where
the padding goes, while "padded TO the left/right" seems to indicate
alignment after padding.

    Juanma





^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
  2012-11-12  1:27     ` Juanma Barranquero
@ 2012-11-12  2:29       ` Drew Adams
  0 siblings, 0 replies; 11+ messages in thread
From: Drew Adams @ 2012-11-12  2:29 UTC (permalink / raw)
  To: 'Juanma Barranquero'; +Cc: 12866

> > Sorry, I still don't get it.  To me, each of those 
> > statements suggests that the text in the field, in this
> > case the line number indication (e.g. "L25"), gets
> > padded by adding spaces on the right (i.e., after the 
> > text), up to the specified width.
> 
> I'm not native, but to me "padded ON the left/right" suggests where
> the padding goes, while "padded TO the left/right" seems to indicate
> alignment after padding.

No.  They both mean that the padding is added at/to/on the left/right of
whatever object is being padded.

And padding does not in itself have anything to do with alignment.  It just
refers to adding something to the target object, making it fatter/thicker/wider
etc. ;-)






^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
  2012-11-12  0:35 bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left? Drew Adams
  2012-11-12  0:44 ` Juanma Barranquero
@ 2012-11-12  3:38 ` Eli Zaretskii
  2012-11-12  3:45   ` Drew Adams
  2012-11-12 20:37   ` Andreas Schwab
  1 sibling, 2 replies; 11+ messages in thread
From: Eli Zaretskii @ 2012-11-12  3:38 UTC (permalink / raw)
  To: Drew Adams; +Cc: 12866

> From: "Drew Adams" <drew.adams@oracle.com>
> Date: Sun, 11 Nov 2012 16:35:02 -0800
> 
> The Info node says this near the top:
>  
>  In any construct except `%%', you can add a decimal integer after the
>  `%' to specify a minimum field width.  If the width is less, the field
>  is padded with spaces to the right.
>  
> >From what I can see, it pads with spaces to the left of the field, not
> the right.  For example:
>  
> (set (make-local-variable 'mode-line-position) '("%40l"))
>  
> It seems to me that that pads the line number with spaces on the left,
> not the right.  But perhaps I'm missing something.

I think string formats, like %s, are padded to the right.  IOW, the
padding behaves like in C.





^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
  2012-11-12  3:38 ` Eli Zaretskii
@ 2012-11-12  3:45   ` Drew Adams
  2012-11-12 15:45     ` Eli Zaretskii
  2012-11-12 20:37   ` Andreas Schwab
  1 sibling, 1 reply; 11+ messages in thread
From: Drew Adams @ 2012-11-12  3:45 UTC (permalink / raw)
  To: 'Eli Zaretskii'; +Cc: 12866

> > (set (make-local-variable 'mode-line-position) '("%40l"))
> >  
> > It seems to me that that pads the line number with spaces 
> > on the left, not the right.  But perhaps I'm missing something.
> 
> I think string formats, like %s, are padded to the right.  IOW, the
> padding behaves like in C.

Dunno what that means.  Are you drawing a contrast with what you think?  Or with
%s (subprocess status) vs %l for mode-line constructs?  Something else?

The padding for %l (in the mode line) is what this bug report is about.  AFAICT,
the padding is put on the left.  Do you see something different from that?






^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
  2012-11-12  3:45   ` Drew Adams
@ 2012-11-12 15:45     ` Eli Zaretskii
  2012-11-12 15:55       ` Drew Adams
  2012-11-23  8:33       ` Chong Yidong
  0 siblings, 2 replies; 11+ messages in thread
From: Eli Zaretskii @ 2012-11-12 15:45 UTC (permalink / raw)
  To: Drew Adams; +Cc: 12866

> From: "Drew Adams" <drew.adams@oracle.com>
> Cc: <12866@debbugs.gnu.org>
> Date: Sun, 11 Nov 2012 19:45:33 -0800
> 
> > > (set (make-local-variable 'mode-line-position) '("%40l"))
> > >  
> > > It seems to me that that pads the line number with spaces 
> > > on the left, not the right.  But perhaps I'm missing something.
> > 
> > I think string formats, like %s, are padded to the right.  IOW, the
> > padding behaves like in C.
> 
> Dunno what that means.  Are you drawing a contrast with what you think?  Or with
> %s (subprocess status) vs %l for mode-line constructs?  Something else?
> 
> The padding for %l (in the mode line) is what this bug report is about.  AFAICT,
> the padding is put on the left.  Do you see something different from that?

The bug report contrasted the documentation with what the code does.
I pointed out that the documentation is only correct as far as string
formatting is concerned, but is incorrect wrt numerical formats, which
indeed pad on the left.  Hopefully, this will help you know the truth,
and will help someone to fix the documentation.





^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
  2012-11-12 15:45     ` Eli Zaretskii
@ 2012-11-12 15:55       ` Drew Adams
  2012-11-23  8:33       ` Chong Yidong
  1 sibling, 0 replies; 11+ messages in thread
From: Drew Adams @ 2012-11-12 15:55 UTC (permalink / raw)
  To: 'Eli Zaretskii'; +Cc: 12866

> > The padding for %l (in the mode line) is what this bug 
> > report is about.  AFAICT, the padding is put on the left.
> > Do you see something different from that?
> 
> The bug report contrasted the documentation with what the code does.
> I pointed out that the documentation is only correct as far as string
> formatting is concerned, but is incorrect wrt numerical formats, which
> indeed pad on the left.  Hopefully, this will help you know the truth,
> and will help someone to fix the documentation.

OK, good.  I guess you are confirming the bug wrt %l (and other numeric
formats).  Thx.






^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
  2012-11-12  3:38 ` Eli Zaretskii
  2012-11-12  3:45   ` Drew Adams
@ 2012-11-12 20:37   ` Andreas Schwab
  1 sibling, 0 replies; 11+ messages in thread
From: Andreas Schwab @ 2012-11-12 20:37 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 12866

Eli Zaretskii <eliz@gnu.org> writes:

> I think string formats, like %s, are padded to the right.  IOW, the
> padding behaves like in C.

No, in printf padding direction does not dependent on the format
character, only on the alignment flag.  But mode-line formatting doesn't
have an alignment flag.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."





^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left?
  2012-11-12 15:45     ` Eli Zaretskii
  2012-11-12 15:55       ` Drew Adams
@ 2012-11-23  8:33       ` Chong Yidong
  1 sibling, 0 replies; 11+ messages in thread
From: Chong Yidong @ 2012-11-23  8:33 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 12866-done

Eli Zaretskii <eliz@gnu.org> writes:

> The bug report contrasted the documentation with what the code does.
> I pointed out that the documentation is only correct as far as string
> formatting is concerned, but is incorrect wrt numerical formats, which
> indeed pad on the left.  Hopefully, this will help you know the truth,
> and will help someone to fix the documentation.

Fixed.





^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2012-11-23  8:33 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-11-12  0:35 bug#12866: 24.3.50; (elisp) `%-Constructs': padded with spaces to the right or left? Drew Adams
2012-11-12  0:44 ` Juanma Barranquero
2012-11-12  1:12   ` Drew Adams
2012-11-12  1:27     ` Juanma Barranquero
2012-11-12  2:29       ` Drew Adams
2012-11-12  3:38 ` Eli Zaretskii
2012-11-12  3:45   ` Drew Adams
2012-11-12 15:45     ` Eli Zaretskii
2012-11-12 15:55       ` Drew Adams
2012-11-23  8:33       ` Chong Yidong
2012-11-12 20:37   ` Andreas Schwab

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).