unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [Annoyance] resizing of echo area is too eager
@ 2003-04-07 17:31 Wedler, Christoph
  2003-04-11  4:43 ` Kenichi Handa
  0 siblings, 1 reply; 11+ messages in thread
From: Wedler, Christoph @ 2003-04-07 17:31 UTC (permalink / raw)


[Test using Emacs-21.2.95.1.]

Sometimes, the echo area is unnecessarily resized, e.g. reserves too
many lines:

 1. Select input method `korean-symbol':
       C-u C-\ korean-symbol RET

 2. In the buffer, enter the 4 characters
       f r a c

  => Emacs reserves 2 lines for the echo area, while only one is
  necessary


My guess is that this is due to var-width fonts -- if I define a input
method producing ASCII chars, this annoyance does not happen:

    (quail-define-package "test" "test" "test" t)
    (quail-define-rules ("ab" "abc"))

 1. Select input method `test':
       C-u C-\ test RET

 2. In the buffer, enter the 2 characters
       a b

  => Emacs correctly only reserves 1 lines for the echo area

- Christoph

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

* Re: [Annoyance] resizing of echo area is too eager
  2003-04-07 17:31 [Annoyance] resizing of echo area is too eager Wedler, Christoph
@ 2003-04-11  4:43 ` Kenichi Handa
  0 siblings, 0 replies; 11+ messages in thread
From: Kenichi Handa @ 2003-04-11  4:43 UTC (permalink / raw)
  Cc: emacs-devel

In article <67B8CED503F3D511BB9F0008C75DAD6605485569@dewdfx17>, "Wedler, Christoph" <christoph.wedler@sap.com> writes:
> [Test using Emacs-21.2.95.1.]
> Sometimes, the echo area is unnecessarily resized, e.g. reserves too
> many lines:

>  1. Select input method `korean-symbol':
>        C-u C-\ korean-symbol RET

>  2. In the buffer, enter the 4 characters
>        f r a c

>   => Emacs reserves 2 lines for the echo area, while only one is
>   necessary

> My guess is that this is due to var-width fonts ...

I guess so.  Perhaps, your Korean font is taller than the
frame's default font.  What happens if you evalute this?
	(message _SOME_KOREAN_STRING_)

Anyway, I've just changed quail to use `message' for showing
the guidance in CVS HEAD.  So, if you set
resize-mini-windows to nil, the echo area won't be resized.

---
Ken'ichi HANDA
handa@m17n.org

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

* RE: [Annoyance] resizing of echo area is too eager
@ 2003-05-02 12:36 Wedler, Christoph
  2003-05-07 13:13 ` Kenichi Handa
  0 siblings, 1 reply; 11+ messages in thread
From: Wedler, Christoph @ 2003-05-02 12:36 UTC (permalink / raw)
  Cc: emacs-devel

Kenichi Handa wrote:

 >> Sometimes, the echo area is unnecessarily resized, e.g. reserves too
 >> many lines: [...]

 >> My guess is that this is due to var-width fonts ...

 > I guess so.  Perhaps, your Korean font is taller than the
 > frame's default font.  What happens if you evalute this?
 > 	(message _SOME_KOREAN_STRING_)

The same (the echo area is unnecessarily resized).

 > Anyway, I've just changed quail to use `message' for showing
 > the guidance in CVS HEAD.  So, if you set
 > resize-mini-windows to nil, the echo area won't be resized.

Hm, this works if I `setq' that variable before calling `message', but

   (let ((resize-mini-windows nil)) (message _SOME_KOREAN_STRING_))

still resizes the echo area.  Any idea how to disable the resizing for
one `message'?  (A real fix = correct behaviour w/ var-width fonts would
also be OK.)

- Christoph

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

* Re: [Annoyance] resizing of echo area is too eager
  2003-05-02 12:36 Wedler, Christoph
@ 2003-05-07 13:13 ` Kenichi Handa
  2003-05-07 14:48   ` Stefan Monnier
  0 siblings, 1 reply; 11+ messages in thread
From: Kenichi Handa @ 2003-05-07 13:13 UTC (permalink / raw)
  Cc: emacs-devel

In article <67B8CED503F3D511BB9F0008C75DAD66054855C4@dewdfx17>, "Wedler, Christoph" <christoph.wedler@sap.com> writes:
>> I guess so.  Perhaps, your Korean font is taller than the
>> frame's default font.  What happens if you evalute this?
>> 	(message _SOME_KOREAN_STRING_)

> The same (the echo area is unnecessarily resized).

Is it really unnecessary?  The reason why it is resized is
that Emacs detects that the message doesn't fit in the
height of the normal line.  Perhaps, you font has
unnecessarily big ascent or descent value.

>>  Anyway, I've just changed quail to use `message' for showing
>>  the guidance in CVS HEAD.  So, if you set
>>  resize-mini-windows to nil, the echo area won't be resized.

> Hm, this works if I `setq' that variable before calling `message', but

>    (let ((resize-mini-windows nil)) (message _SOME_KOREAN_STRING_))

> still resizes the echo area.

Yes, because redisplay happens only after the execution of
the above code is finished.

> Any idea how to disable the resizing for
> one `message'?  (A real fix = correct behaviour w/ var-width fonts would
> also be OK.)

I have no idea.

By they way, even with the default value of
resize-mini-windows (grow-only), the behaviour of quail
input method should be improved.  Previously, it resizes the
echo area so frequently, but now it makes the area taller
just once, and keep that hight until you turns the input
method off.  Could you verify it?

---
Ken'ichi HANDA
handa@m17n.org

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

* Re: [Annoyance] resizing of echo area is too eager
  2003-05-07 13:13 ` Kenichi Handa
@ 2003-05-07 14:48   ` Stefan Monnier
  0 siblings, 0 replies; 11+ messages in thread
From: Stefan Monnier @ 2003-05-07 14:48 UTC (permalink / raw)
  Cc: emacs-devel

> >    (let ((resize-mini-windows nil)) (message _SOME_KOREAN_STRING_))
> > still resizes the echo area.
> Yes, because redisplay happens only after the execution of
> the above code is finished.

How about

          (let ((resize-mini-windows nil))
            (message _SOME_KOREAN_STRING_)
            (sit-for 0.01))

to cause redisplay to happen while resize-mini-windows is bound ?


	Stefan

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

* RE: [Annoyance] resizing of echo area is too eager
@ 2003-05-07 19:32 Wedler, Christoph
  2003-05-07 20:01 ` Luc Teirlinck
  2003-05-08  4:09 ` Kenichi Handa
  0 siblings, 2 replies; 11+ messages in thread
From: Wedler, Christoph @ 2003-05-07 19:32 UTC (permalink / raw)
  Cc: emacs-devel

Kenichi Handa wrote:
 > In article <67B8CED503F3D511BB9F0008C75DAD66054855C4@dewdfx17>, "Wedler, Christoph" <christoph.wedler@sap.com> writes:

 >>> [...] What happens if you evalute this?
 >>> (message _SOME_KOREAN_STRING_)

 >> The same (the echo area is unnecessarily resized).

 > Is it really unnecessary?  The reason why it is resized is
 > that Emacs detects that the message doesn't fit in the
 > height of the normal line.  Perhaps, you font has
 > unnecessarily big ascent or descent value.

You're right, the ascent is one point higher.  I see, Emacs then wants
to increase the height of the echo area, but its height must always be a
multiple of the height of the default font.

 >> Hm, this works if I `setq' that variable before calling `message', but

 >> (let ((resize-mini-windows nil)) (message _SOME_KOREAN_STRING_))

 >> still resizes the echo area.

 > Yes, because redisplay happens only after the execution of the above
 > code is finished.

Hm.  Unfortunately, Stefans idea didn't work: the echo area would be
resized after the `sit-for' period.

 > By they way, even with the default value of resize-mini-windows
 > (grow-only), the behaviour of quail input method should be improved.
 > Previously, it resizes the echo area so frequently, but now it makes
 > the area taller just once, and keep that hight until you turns the
 > input method off.  Could you verify it?

Well, I use Emacs-21.3...  I could try the development version if...

Some time ago, Savannah's WebCVS offered to download a tarball of the
head revision.  I don't see this anymore...

- Christoph

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

* Re: [Annoyance] resizing of echo area is too eager
  2003-05-07 19:32 Wedler, Christoph
@ 2003-05-07 20:01 ` Luc Teirlinck
  2003-05-08  4:09 ` Kenichi Handa
  1 sibling, 0 replies; 11+ messages in thread
From: Luc Teirlinck @ 2003-05-07 20:01 UTC (permalink / raw)
  Cc: handa

Christoph Wedler wrote:

   Well, I use Emacs-21.3...  I could try the development version if...

   Some time ago, Savannah's WebCVS offered to download a tarball of the
   head revision.  I don't see this anymore...

What about:

http://savannah.gnu.org/cvs/?group_id=40

Apparently, there appear to have been some problems over the past few
days, but they appear to be over.  (You can read about it at:
http://savannah.gnu.org/)

Sincerely,

Luc.

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

* Re: [Annoyance] resizing of echo area is too eager
  2003-05-07 19:32 Wedler, Christoph
  2003-05-07 20:01 ` Luc Teirlinck
@ 2003-05-08  4:09 ` Kenichi Handa
  1 sibling, 0 replies; 11+ messages in thread
From: Kenichi Handa @ 2003-05-08  4:09 UTC (permalink / raw)
  Cc: emacs-devel

[-- Attachment #1: Type: text/plain, Size: 1245 bytes --]

In article <67B8CED503F3D511BB9F0008C75DAD66054855E1@dewdfx17>, "Wedler, Christoph" <christoph.wedler@sap.com> writes:
> You're right, the ascent is one point higher.  I see, Emacs then wants
> to increase the height of the echo area, but its height must always be a
> multiple of the height of the default font.

Yes.

> Hm.  Unfortunately, Stefans idea didn't work: the echo area would be
> resized after the `sit-for' period.

I think it's not resized after the `sit-for', but the echo
area is redisplayed after the execution of the whole code.
Try this:

(let ((resize-mini-windows nil)) 
  (message "_TALL_MESSAGE_")
  (sit-for 0)
  (while t))

>>  By they way, even with the default value of resize-mini-windows
>>  (grow-only), the behaviour of quail input method should be improved.
>>  Previously, it resizes the echo area so frequently, but now it makes
>>  the area taller just once, and keep that hight until you turns the
>>  input method off.  Could you verify it?

> Well, I use Emacs-21.3...  I could try the development version if...

When you evalute the following two lines:

(defun define-button-type (&rest args))
(provide 'help-mode)

quail.el of the HEAD branch (attached) can be used.

---
Ken'ichi HANDA
handa@m17n.org


[-- Attachment #2: quail.el.gz --]
[-- Type: application/octet-stream, Size: 27464 bytes --]

[-- Attachment #3: Type: text/plain, Size: 142 bytes --]

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel

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

* RE: [Annoyance] resizing of echo area is too eager
@ 2003-05-08 17:33 Wedler, Christoph
  2003-05-12 11:37 ` Kenichi Handa
  0 siblings, 1 reply; 11+ messages in thread
From: Wedler, Christoph @ 2003-05-08 17:33 UTC (permalink / raw)
  Cc: emacs-devel

Kenichi Handa wrote:

 >> Hm.  Unfortunately, Stefans idea didn't work: the echo area would be
 >> resized after the `sit-for' period.

 > I think it's not resized after the `sit-for', but the echo
 > area is redisplayed after the execution of the whole code.

Err, sorry, I meant that...

 >>> By they way, even with the default value of resize-mini-windows
 >>> (grow-only), the behaviour of quail input method should be improved.
 >>> Previously, it resizes the echo area so frequently, but now it makes
 >>> the area taller just once, and keep that hight until you turns the
 >>> input method off.  Could you verify it?

No, with Emacs-21.2.95, changing quail.el doesn't change the behaviour
(echo area has 2 lines only if korean characters are displayed there,
after the character has been inserted, the echo area is back to 1 line).

(face-font 'default)
=> "-Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO8859-1"

- Christoph

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

* Re: [Annoyance] resizing of echo area is too eager
  2003-05-08 17:33 Wedler, Christoph
@ 2003-05-12 11:37 ` Kenichi Handa
  0 siblings, 0 replies; 11+ messages in thread
From: Kenichi Handa @ 2003-05-12 11:37 UTC (permalink / raw)
  Cc: emacs-devel

In article <67B8CED503F3D511BB9F0008C75DAD66054855EA@dewdfx17>, "Wedler, Christoph" <christoph.wedler@sap.com> writes:
>>>>  By they way, even with the default value of resize-mini-windows
>>>>  (grow-only), the behaviour of quail input method should be improved.
>>>>  Previously, it resizes the echo area so frequently, but now it makes
>>>>  the area taller just once, and keep that hight until you turns the
>>>>  input method off.  Could you verify it?

> No, with Emacs-21.2.95, changing quail.el doesn't change the behaviour
> (echo area has 2 lines only if korean characters are displayed there,
> after the character has been inserted, the echo area is back to 1 line).

Ah, sure, sorry.  My change just suppressed the resizing
while you are typing Korean letters.  Previously, each time
you type a key, the echo area was resized.

It seems that there's no way other than setting
resize-mini-windows to nil to completely suppressing the
resizing.

---
Ken'ichi HANDA
handa@m17n.org

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

* RE: [Annoyance] resizing of echo area is too eager
@ 2003-05-14 18:11 Wedler, Christoph
  0 siblings, 0 replies; 11+ messages in thread
From: Wedler, Christoph @ 2003-05-14 18:11 UTC (permalink / raw)
  Cc: emacs-devel

Kenichi Handa wrote:

 >>>>> By they way, even with the default value of resize-mini-windows
 >>>>> (grow-only), the behaviour of quail input method should be improved.
 >>>>> Previously, it resizes the echo area so frequently, but now it makes
 >>>>> the area taller just once, and keep that hight until you turns the
 >>>>> input method off.  Could you verify it?

 >> No, with Emacs-21.2.95, changing quail.el doesn't change the behaviour
 >> (echo area has 2 lines only if korean characters are displayed there,
 >> after the character has been inserted, the echo area is back to 1 line).

 > Ah, sure, sorry.  My change just suppressed the resizing
 > while you are typing Korean letters.  Previously, each time
 > you type a key, the echo area was resized.

OK, I see that difference (with a key sequence for a quail rule which is
also a prefix of the key sequence of another quail rule).

Yes, your change in quail.el has improved things.

 > It seems that there's no way other than setting resize-mini-windows
 > to nil to completely suppressing the resizing.

Hm, I use a idle-time `message' (like in eldoc.el) with non-default
characters in my package X-Symbol...  Setting the user option
`resize-mini-windows' there wouldn't be nice.

- Christoph

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

end of thread, other threads:[~2003-05-14 18:11 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-04-07 17:31 [Annoyance] resizing of echo area is too eager Wedler, Christoph
2003-04-11  4:43 ` Kenichi Handa
  -- strict thread matches above, loose matches on Subject: below --
2003-05-02 12:36 Wedler, Christoph
2003-05-07 13:13 ` Kenichi Handa
2003-05-07 14:48   ` Stefan Monnier
2003-05-07 19:32 Wedler, Christoph
2003-05-07 20:01 ` Luc Teirlinck
2003-05-08  4:09 ` Kenichi Handa
2003-05-08 17:33 Wedler, Christoph
2003-05-12 11:37 ` Kenichi Handa
2003-05-14 18:11 Wedler, Christoph

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