unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* 23.0.60;show-paren-mode causes abnormal vertical lines on Win32.
@ 2008-02-15  0:43 =?gb18030?B?0+G94A==?=
  2008-02-15  9:12 ` 23.0.60; show-paren-mode " Jason Rumney
  0 siblings, 1 reply; 31+ messages in thread
From: =?gb18030?B?0+G94A==?= @ 2008-02-15  0:43 UTC (permalink / raw)
  To: emacs-pretest-bug

testcase:
()
^
point
Your point is on the open paren. Emacs highlights the open and close
parens. If you try to input letters now, some letters will begin with
a abnormal vertical line, especial for letters 'f' and 'm'. The lines
have the save color as the background of the highlighted paren.





In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
 of 2008-02-14 on WASP-8DB7BB213F
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4)'

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: zh_CN
  value of $XMODIFIERS: nil
  locale-coding-system: cp936
  default-enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  show-paren-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-compression-mode: t
  line-number-mode: t

Recent input:
M-x b u g SPC r <backspace> <backspace> <backspace> 
<backspace> r e p o r SPC b u SPC <backspace> = <backspace> 
<backspace> e SPC SPC <return>

Recent messages:
Warning: Default coding system `chinese-iso-8bit' disagrees with
system codeset `cp936' for this locale.
Loading e:/emacs23/site-lisp/color-theme-el/themes/color-theme-autoloads.elc...done
Loading e:/emacs23/site-lisp/color-theme-el/themes/color-theme-example.el (source)...done
Loading e:/emacs23/site-lisp/color-theme-el/themes/color-theme-example.elc...done
Loading e:/emacs23/site-lisp/color-theme-el/themes/color-theme-library.el (source)...done
Loading e:/emacs23/site-lisp/color-theme-el/themes/color-theme-library.elc...done
Loading e:/emacs23/site-lisp/color-theme-el/themes/color-theme.elc...done
For information about GNU Emacs and the GNU system, type C-h C-a.




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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-15  0:43 23.0.60;show-paren-mode causes abnormal vertical lines on Win32 =?gb18030?B?0+G94A==?=
@ 2008-02-15  9:12 ` Jason Rumney
  2008-02-15 14:24   ` Stefan Monnier
                     ` (2 more replies)
  0 siblings, 3 replies; 31+ messages in thread
From: Jason Rumney @ 2008-02-15  9:12 UTC (permalink / raw)
  To: 俞洁; +Cc: emacs-pretest-bug

俞洁 wrote:
> testcase:
> ()
> ^
> point
> Your point is on the open paren. Emacs highlights the open and close
> parens. If you try to input letters now, some letters will begin with
> a abnormal vertical line, especial for letters 'f' and 'm'. The lines
> have the save color as the background of the highlighted paren.
>
>
>
> In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
>   
> configured using `configure --with-gcc (3.4)'
>   

Please try with `configure --with-gcc --enable-font-backend'

If the bug is only in the old font backend, and only in Emacs 23.0.60, 
then it won't be worth fixing.





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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-15  9:12 ` 23.0.60; show-paren-mode " Jason Rumney
@ 2008-02-15 14:24   ` Stefan Monnier
  2008-02-15 21:44     ` Jason Rumney
       [not found]   ` <42b562540802150241wb2d1b66n2f0b50b6c9bbca36@mail.gmail.com>
  2008-02-17  4:57   ` yu jie
  2 siblings, 1 reply; 31+ messages in thread
From: Stefan Monnier @ 2008-02-15 14:24 UTC (permalink / raw)
  To: Jason Rumney; +Cc: emacs-pretest-bug, 俞洁

> If the bug is only in the old font backend, and only in Emacs 23.0.60, then
> it won't be worth fixing.

If that's really how we treat such bugs, then we absolutely need to
make --enable-font-backend the default.


        Stefan "who wouldn't disagree with such a decision"




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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-15 14:24   ` Stefan Monnier
@ 2008-02-15 21:44     ` Jason Rumney
  2008-02-15 23:02       ` Juanma Barranquero
  0 siblings, 1 reply; 31+ messages in thread
From: Jason Rumney @ 2008-02-15 21:44 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: emacs-pretest-bug, ??

Stefan Monnier wrote:
>> If the bug is only in the old font backend, and only in Emacs 23.0.60, then
>> it won't be worth fixing.
>>     
>
> If that's really how we treat such bugs, then we absolutely need to
> make --enable-font-backend the default.
>   
It will be the default before the release of 23.1. And the old code will 
be removed if I understand correctly, so what point is there in fixing 
minor bugs in it now?





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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-15 21:44     ` Jason Rumney
@ 2008-02-15 23:02       ` Juanma Barranquero
  2008-02-15 23:16         ` Jason Rumney
  0 siblings, 1 reply; 31+ messages in thread
From: Juanma Barranquero @ 2008-02-15 23:02 UTC (permalink / raw)
  To: Jason Rumney; +Cc: emacs-pretest-bug

On Feb 15, 2008 10:44 PM, Jason Rumney <jasonr@gnu.org> wrote:

> And the old code will
> be removed if I understand correctly, so what point is there in fixing
> minor bugs in it now?

As I see it, that is an argument for making the new backend the
default now, not "before the release of 23.1"...

             Juanma




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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
       [not found]   ` <42b562540802150241wb2d1b66n2f0b50b6c9bbca36@mail.gmail.com>
@ 2008-02-15 23:10     ` Jason Rumney
  2008-02-15 23:15       ` Drew Adams
  0 siblings, 1 reply; 31+ messages in thread
From: Jason Rumney @ 2008-02-15 23:10 UTC (permalink / raw)
  To: yu jie; +Cc: emacs-pretest-bug@gnu.org

yu jie wrote:
> Yes, the bug is only in the old font backend.

I followed your recipe on Emacs 22, and found it was not restricted to
the trunk though.

This problem seems to be related to other Cleartype bugs. Andrew Ng sent
a full patch for these some time ago, but I don't know if his paperwork
has arrived yet. But for this specific problem, I have come up with a
much smaller fix in the meantime. It also appears to fix the overlay
problem reported by Drew Adams 18 months ago.







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

* RE: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-15 23:10     ` Jason Rumney
@ 2008-02-15 23:15       ` Drew Adams
  0 siblings, 0 replies; 31+ messages in thread
From: Drew Adams @ 2008-02-15 23:15 UTC (permalink / raw)
  To: 'Jason Rumney', 'yu jie'; +Cc: emacs-pretest-bug

> It also appears to fix the overlay
> problem reported by Drew Adams 18 months ago.

Good news; thanks.





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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-15 23:02       ` Juanma Barranquero
@ 2008-02-15 23:16         ` Jason Rumney
  2008-02-15 23:27           ` Juanma Barranquero
  2008-02-16  3:08           ` 23.0.60; show-paren-mode causes abnormal vertical lines on Win32 Stefan Monnier
  0 siblings, 2 replies; 31+ messages in thread
From: Jason Rumney @ 2008-02-15 23:16 UTC (permalink / raw)
  To: Juanma Barranquero; +Cc: emacs-pretest-bug

Juanma Barranquero wrote:
> On Feb 15, 2008 10:44 PM, Jason Rumney <jasonr@gnu.org> wrote:
>
>   
>> And the old code will
>> be removed if I understand correctly, so what point is there in fixing
>> minor bugs in it now?
>>     
>
> As I see it, that is an argument for making the new backend the
> default now, not "before the release of 23.1"...
>   

There are also arguments against that, such as the fact that the new 
backend does not seem to have stabilised yet, with problems like Stefan 
is experiencing now, and which Windows users suffered around the time of 
the merge still a frequent occurrence.





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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-15 23:16         ` Jason Rumney
@ 2008-02-15 23:27           ` Juanma Barranquero
  2008-02-15 23:31             ` font-backend [was Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.] Glenn Morris
  2008-02-16  3:08           ` 23.0.60; show-paren-mode causes abnormal vertical lines on Win32 Stefan Monnier
  1 sibling, 1 reply; 31+ messages in thread
From: Juanma Barranquero @ 2008-02-15 23:27 UTC (permalink / raw)
  To: Jason Rumney; +Cc: emacs-pretest-bug

On Feb 16, 2008 12:16 AM, Jason Rumney <jasonr@gnu.org> wrote:

> There are also arguments against that, such as the fact that the new
> backend does not seem to have stabilised yet, with problems like Stefan
> is experiencing now, and which Windows users suffered around the time of
> the merge still a frequent occurrence.

I know. But nobody ever said the trunk should be stable at all times.
(I use the trunk, I want it to be stable; but I think it's more
important to make the feature available by default sooner so it is
more widely tested.)

Just my 0.02€

             Juanma

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

* font-backend [was Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.]
  2008-02-15 23:27           ` Juanma Barranquero
@ 2008-02-15 23:31             ` Glenn Morris
  2008-02-15 23:47               ` font-backend Miles Bader
  0 siblings, 1 reply; 31+ messages in thread
From: Glenn Morris @ 2008-02-15 23:31 UTC (permalink / raw)
  To: Juanma Barranquero; +Cc: emacs-devel, Jason Rumney

"Juanma Barranquero" wrote:

> On Feb 16, 2008 12:16 AM, Jason Rumney <jasonr@gnu.org> wrote:
>
>> There are also arguments against that, such as the fact that the new
>> backend does not seem to have stabilised yet, with problems like Stefan
>> is experiencing now, and which Windows users suffered around the time of
>> the merge still a frequent occurrence.
>
> I know. But nobody ever said the trunk should be stable at all times.
> (I use the trunk, I want it to be stable; but I think it's more
> important to make the feature available by default sooner so it is
> more widely tested.)

Nobody ever answered Eli's question, AFAIK:

http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg00089.html

  Can someone "in the know" please post an explanation of the
  font-backend feature, and what are its advantages/disadvantages?




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

* Re: font-backend
  2008-02-15 23:31             ` font-backend [was Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.] Glenn Morris
@ 2008-02-15 23:47               ` Miles Bader
  2008-02-16 13:18                 ` font-backend Eli Zaretskii
  0 siblings, 1 reply; 31+ messages in thread
From: Miles Bader @ 2008-02-15 23:47 UTC (permalink / raw)
  To: Glenn Morris; +Cc: Juanma Barranquero, Jason Rumney, emacs-devel

Glenn Morris <rgm@gnu.org> writes:
> Nobody ever answered Eli's question, AFAIK:
>
> http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg00089.html
>
>   Can someone "in the know" please post an explanation of the
>   font-backend feature, and what are its advantages/disadvantages?

The reason most people seem to use it (and I think just about
_everybody_ who I've seen mention building unicode-branch or post-merge
emacs, seems to) because they want anti-aliased fonts.

Some other advantages might be better integration with modern
client-side font mechanisms, particularly font-selection, instead of
using the traditional (and largely regarded as "crufty") X font
mechanism.

I dunno if any of that applies to Eli, if he uses windows.

-Miles

-- 
Friendship, n. A ship big enough to carry two in fair weather, but only one
in foul.




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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-15 23:16         ` Jason Rumney
  2008-02-15 23:27           ` Juanma Barranquero
@ 2008-02-16  3:08           ` Stefan Monnier
  2008-02-16  6:01             ` Dan Nicolaescu
  2008-02-17 13:22             ` Richard Stallman
  1 sibling, 2 replies; 31+ messages in thread
From: Stefan Monnier @ 2008-02-16  3:08 UTC (permalink / raw)
  To: Jason Rumney; +Cc: Juanma Barranquero, emacs-pretest-bug

>>> And the old code will
>>> be removed if I understand correctly, so what point is there in fixing
>>> minor bugs in it now?
>> As I see it, that is an argument for making the new backend the
>> default now, not "before the release of 23.1"...
> There are also arguments against that, such as the fact that the new backend
> does not seem to have stabilised yet, with problems like Stefan is
> experiencing now, and which Windows users suffered around the time of the
> merge still a frequent occurrence.

If we want it to be the default for 23.1, and given that it works now
and is merged into the trunk, I see no reason not to make it the default
now, so that bugs get found and fixed earlier rather than later.

Any objection to making the "--enable-font-backend" the default?


        Stefan


PS: For what it's worth, I have no idea if my problem appears with the "old
font backend" as well or not.  And if nobody wants to fix it there,
I see no reason to look into it.




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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-16  3:08           ` 23.0.60; show-paren-mode causes abnormal vertical lines on Win32 Stefan Monnier
@ 2008-02-16  6:01             ` Dan Nicolaescu
  2008-02-19 15:51               ` Stefan Monnier
  2008-02-17 13:22             ` Richard Stallman
  1 sibling, 1 reply; 31+ messages in thread
From: Dan Nicolaescu @ 2008-02-16  6:01 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: Juanma Barranquero, emacs-pretest-bug, Jason Rumney

Stefan Monnier <monnier@IRO.UMontreal.CA> writes:

  > >>> And the old code will
  > >>> be removed if I understand correctly, so what point is there in fixing
  > >>> minor bugs in it now?
  > >> As I see it, that is an argument for making the new backend the
  > >> default now, not "before the release of 23.1"...
  > > There are also arguments against that, such as the fact that the new backend
  > > does not seem to have stabilised yet, with problems like Stefan is
  > > experiencing now, and which Windows users suffered around the time of the
  > > merge still a frequent occurrence.
  > 
  > If we want it to be the default for 23.1, and given that it works now
  > and is merged into the trunk, I see no reason not to make it the default
  > now, so that bugs get found and fixed earlier rather than later.
  > 
  > Any objection to making the "--enable-font-backend" the default?

It does not work very well with emacsclient

emacs -Q -nw -f server-start
emacsclient -c ~/.emacs
C-x 5 0   in the emacsclient frame
After that
emacsclient -c ~/.emacs
just hangs.




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

* Re: font-backend
  2008-02-15 23:47               ` font-backend Miles Bader
@ 2008-02-16 13:18                 ` Eli Zaretskii
  2008-02-16 13:27                   ` font-backend Miles Bader
                                     ` (2 more replies)
  0 siblings, 3 replies; 31+ messages in thread
From: Eli Zaretskii @ 2008-02-16 13:18 UTC (permalink / raw)
  To: Miles Bader; +Cc: rgm, jasonr, emacs-devel, lekktu

> From: Miles Bader <miles@gnu.org>
> Date: Sat, 16 Feb 2008 08:47:11 +0900
> Cc: Juanma Barranquero <lekktu@gmail.com>, Jason Rumney <jasonr@gnu.org>,
> 	emacs-devel@gnu.org
> 
> Glenn Morris <rgm@gnu.org> writes:
> > Nobody ever answered Eli's question, AFAIK:
> >
> > http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg00089.html
> >
> >   Can someone "in the know" please post an explanation of the
> >   font-backend feature, and what are its advantages/disadvantages?
> 
> The reason most people seem to use it (and I think just about
> _everybody_ who I've seen mention building unicode-branch or post-merge
> emacs, seems to) because they want anti-aliased fonts.
> 
> Some other advantages might be better integration with modern
> client-side font mechanisms, particularly font-selection, instead of
> using the traditional (and largely regarded as "crufty") X font
> mechanism.

Thanks, but I also asked about disadvantages.  TANSTAAFL, and I
believe this case is no exception.

> I dunno if any of that applies to Eli, if he uses windows.

Why would this be any different on Windows?




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

* Re: font-backend
  2008-02-16 13:18                 ` font-backend Eli Zaretskii
@ 2008-02-16 13:27                   ` Miles Bader
  2008-02-16 17:12                   ` font-backend Jason Rumney
  2008-02-17  9:29                   ` font-backend Kenichi Handa
  2 siblings, 0 replies; 31+ messages in thread
From: Miles Bader @ 2008-02-16 13:27 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: lekktu, rgm, emacs-devel, jasonr

Eli Zaretskii <eliz@gnu.org> writes:
>> I dunno if any of that applies to Eli, if he uses windows.
>
> Why would this be any different on Windows?

'cause (1) I thought anti-aliased fonts were already available on
windows, and (2) at least one of the obvious benefits on gnu/linux, the
use of "fontconfig" (a widely used client-side font configuration
mechanism), seems like it wouldn't apply to windows, which I presume(d)
uses a windows specific font-configuration mechanism.

I could obviously be wrong about these, as I rarely use Emacs on
windows.

-Miles

-- 
Success, n. The one unpardonable sin against one's fellows.




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

* Re: font-backend
  2008-02-16 13:18                 ` font-backend Eli Zaretskii
  2008-02-16 13:27                   ` font-backend Miles Bader
@ 2008-02-16 17:12                   ` Jason Rumney
  2008-02-17  9:29                   ` font-backend Kenichi Handa
  2 siblings, 0 replies; 31+ messages in thread
From: Jason Rumney @ 2008-02-16 17:12 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: lekktu, rgm, emacs-devel, Miles Bader

Eli Zaretskii wrote:
> Thanks, but I also asked about disadvantages.  TANSTAAFL, and I
> believe this case is no exception.
>   

It has had about 15 years less testing.
It is noticably slower on Windows (not sure about other platforms)
There is no BDF font support on Windows (yet - it will be a cleaner 
implementation though, with a separate backend)


>   
>> I dunno if any of that applies to Eli, if he uses windows.
>>     
>
> Why would this be any different on Windows?
>   

The antialiasing advantage does not apply to Windows, since antialiasing 
does not depend on the APIs used for drawing text.





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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-15  9:12 ` 23.0.60; show-paren-mode " Jason Rumney
  2008-02-15 14:24   ` Stefan Monnier
       [not found]   ` <42b562540802150241wb2d1b66n2f0b50b6c9bbca36@mail.gmail.com>
@ 2008-02-17  4:57   ` yu jie
  2 siblings, 0 replies; 31+ messages in thread
From: yu jie @ 2008-02-17  4:57 UTC (permalink / raw)
  To: Jason Rumney; +Cc: emacs-pretest-bug

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

Hi,
This bug is only in the old font backend, but you said that the new font
backend is slower on Windows. I have noticed that. Lines of the buffer will
blink when I enable the new font backend. Is there any plan to speed up it
on Windows?
Thanks.

On Feb 15, 2008 5:12 PM, Jason Rumney <jasonr@gnu.org> wrote:

> 俞洁 wrote:
> > testcase:
> > ()
> > ^
> > point
> > Your point is on the open paren. Emacs highlights the open and close
> > parens. If you try to input letters now, some letters will begin with
> > a abnormal vertical line, especial for letters 'f' and 'm'. The lines
> > have the save color as the background of the highlighted paren.
> >
> >
> >
> > In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
> >
> > configured using `configure --with-gcc (3.4)'
> >
>
> Please try with `configure --with-gcc --enable-font-backend'
>
> If the bug is only in the old font backend, and only in Emacs 23.0.60,
> then it won't be worth fixing.
>
>

[-- Attachment #2: Type: text/html, Size: 1385 bytes --]

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

* Re: font-backend
  2008-02-16 13:18                 ` font-backend Eli Zaretskii
  2008-02-16 13:27                   ` font-backend Miles Bader
  2008-02-16 17:12                   ` font-backend Jason Rumney
@ 2008-02-17  9:29                   ` Kenichi Handa
  2008-02-22 14:00                     ` font-backend finalpatch
  2 siblings, 1 reply; 31+ messages in thread
From: Kenichi Handa @ 2008-02-17  9:29 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: lekktu, rgm, jasonr, emacs-devel, miles

In article <uodahkpjy.fsf@gnu.org>, Eli Zaretskii <eliz@gnu.org> writes:

> > >   Can someone "in the know" please post an explanation of the
> > >   font-backend feature, and what are its advantages/disadvantages?
> > 
> > The reason most people seem to use it (and I think just about
> > _everybody_ who I've seen mention building unicode-branch or post-merge
> > emacs, seems to) because they want anti-aliased fonts.
> > 
> > Some other advantages might be better integration with modern
> > client-side font mechanisms, particularly font-selection, instead of
> > using the traditional (and largely regarded as "crufty") X font
> > mechanism.

I think the biggest advantage is the Emacs can use OTF with
the font-backend mechanism.  For such script as Indic, it's
vital matter.


> Thanks, but I also asked about disadvantages.

Once the code gets stable, I think there's no disadvantage.

---
Kenichi Handa
handa@ni.aist.go.jp







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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-16  3:08           ` 23.0.60; show-paren-mode causes abnormal vertical lines on Win32 Stefan Monnier
  2008-02-16  6:01             ` Dan Nicolaescu
@ 2008-02-17 13:22             ` Richard Stallman
  1 sibling, 0 replies; 31+ messages in thread
From: Richard Stallman @ 2008-02-17 13:22 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: lekktu, emacs-pretest-bug, jasonr

    If we want it to be the default for 23.1, and given that it works now
    and is merged into the trunk, I see no reason not to make it the default
    now, so that bugs get found and fixed earlier rather than later.

I agree with that logic.




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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-16  6:01             ` Dan Nicolaescu
@ 2008-02-19 15:51               ` Stefan Monnier
  2008-02-19 20:44                 ` Dan Nicolaescu
  0 siblings, 1 reply; 31+ messages in thread
From: Stefan Monnier @ 2008-02-19 15:51 UTC (permalink / raw)
  To: Dan Nicolaescu; +Cc: Juanma Barranquero, emacs-pretest-bug, Jason Rumney

>> >>> And the old code will
>> >>> be removed if I understand correctly, so what point is there in fixing
>> >>> minor bugs in it now?
>> >> As I see it, that is an argument for making the new backend the
>> >> default now, not "before the release of 23.1"...
>> > There are also arguments against that, such as the fact that the new backend
>> > does not seem to have stabilised yet, with problems like Stefan is
>> > experiencing now, and which Windows users suffered around the time of the
>> > merge still a frequent occurrence.
>> 
>> If we want it to be the default for 23.1, and given that it works now
>> and is merged into the trunk, I see no reason not to make it the default
>> now, so that bugs get found and fixed earlier rather than later.
>> 
>> Any objection to making the "--enable-font-backend" the default?

> It does not work very well with emacsclient

> emacs -Q -nw -f server-start
> emacsclient -c ~/.emacs
> C-x 5 0   in the emacsclient frame
> After that
> emacsclient -c ~/.emacs
> just hangs.

Works just fine for me,


        Stefan




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

* Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.
  2008-02-19 15:51               ` Stefan Monnier
@ 2008-02-19 20:44                 ` Dan Nicolaescu
  0 siblings, 0 replies; 31+ messages in thread
From: Dan Nicolaescu @ 2008-02-19 20:44 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: Juanma Barranquero, emacs-pretest-bug, Jason Rumney

Stefan Monnier <monnier@iro.umontreal.ca> writes:

  > >> >>> And the old code will
  > >> >>> be removed if I understand correctly, so what point is there in fixing
  > >> >>> minor bugs in it now?
  > >> >> As I see it, that is an argument for making the new backend the
  > >> >> default now, not "before the release of 23.1"...
  > >> > There are also arguments against that, such as the fact that the new backend
  > >> > does not seem to have stabilised yet, with problems like Stefan is
  > >> > experiencing now, and which Windows users suffered around the time of the
  > >> > merge still a frequent occurrence.
  > >> 
  > >> If we want it to be the default for 23.1, and given that it works now
  > >> and is merged into the trunk, I see no reason not to make it the default
  > >> now, so that bugs get found and fixed earlier rather than later.
  > >> 
  > >> Any objection to making the "--enable-font-backend" the default?
  > 
  > > It does not work very well with emacsclient
  > 
  > > emacs -Q -nw -f server-start
  > > emacsclient -c ~/.emacs
  > > C-x 5 0   in the emacsclient frame
  > > After that
  > > emacsclient -c ~/.emacs
  > > just hangs.
  > 
  > Works just fine for me,

Yep, Handa-san fixed it a few days ago.




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

* Re: font-backend
  2008-02-17  9:29                   ` font-backend Kenichi Handa
@ 2008-02-22 14:00                     ` finalpatch
  2008-02-22 16:43                       ` font-backend Stefan Monnier
                                         ` (2 more replies)
  0 siblings, 3 replies; 31+ messages in thread
From: finalpatch @ 2008-02-22 14:00 UTC (permalink / raw)
  To: emacs-devel

Kenichi Handa <handa <at> m17n.org> writes:

>  In article <uodahkpjy.fsf <at> gnu.org>, Eli Zaretskii <eliz <at>
> gnu.org> writes: > > > Can someone "in the know" please post an
> explanation of the > > > font-backend feature, and what are its
> advantages/disadvantages?  > > > > The reason most people seem to use it
> (and I think just about > > _everybody_ who I've seen mention building
> unicode-branch or post-merge > > emacs, seems to) because they want
> anti-aliased fonts.  > > > > Some other advantages might be better
> integration with modern > > client-side font mechanisms, particularly
> font-selection, instead of > > using the traditional (and largely regarded
> as "crufty") X font > > mechanism.  I think the biggest advantage is the
> Emacs can use OTF with the font-backend mechanism.  For such script as
> Indic, it's vital matter.  > Thanks, but I also asked about disadvantages.
> Once the code gets stable, I think there's no disadvantage.  --- Kenichi
> Handa handa <at> ni.aist.go.jp

Just tested the font-backend build on windows, and there are 2 obvious
problems I have noticed. 1) the rendering speed is painfully slow, even on my
core2 cpu. 2) it cannot render italic font correctly for non-ascii
chars(they are displayed as boxes). Now the bright side, the annoy vertical
lines and incomplete rendered chars are completely gone, cool. if the above 
mentioned issues are fixed, i see no reason not to use it as the default.






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

* Re: font-backend
  2008-02-22 14:00                     ` font-backend finalpatch
@ 2008-02-22 16:43                       ` Stefan Monnier
  2008-02-23  0:15                         ` font-backend Feng Li
  2008-02-23  0:25                       ` font-backend YAMAMOTO Mitsuharu
  2008-02-23  2:28                       ` font-backend Jason Rumney
  2 siblings, 1 reply; 31+ messages in thread
From: Stefan Monnier @ 2008-02-22 16:43 UTC (permalink / raw)
  To: finalpatch; +Cc: emacs-devel

> Just tested the font-backend build on windows, and there are 2 obvious
> problems I have noticed. 1) the rendering speed is painfully slow, even on my
> core2 cpu.

Question:
What if you start Emacs with --disable-font-backend?
This should give you back the performance and behavior you had before.

It's not a long-term solution, but the first thing I'd like to do is to
get rid of the ENABLE_FONT_BACKEND compile-time choice.


        Stefan




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

* Re: font-backend
  2008-02-22 16:43                       ` font-backend Stefan Monnier
@ 2008-02-23  0:15                         ` Feng Li
  0 siblings, 0 replies; 31+ messages in thread
From: Feng Li @ 2008-02-23  0:15 UTC (permalink / raw)
  To: emacs-devel

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

On Sat, Feb 23, 2008 at 3:43 AM, Stefan Monnier <monnier@iro.umontreal.ca>
wrote:

> > Just tested the font-backend build on windows, and there are 2 obvious
> > problems I have noticed. 1) the rendering speed is painfully slow, even
> on my
> > core2 cpu.
>
> Question:
> What if you start Emacs with --disable-font-backend?
> This should give you back the performance and behavior you had before.
>
> It's not a long-term solution, but the first thing I'd like to do is to
> get rid of the ENABLE_FONT_BACKEND compile-time choice.
>
>
>        Stefan
>


Yes, I can confirm starting with --disable-font-backend works fine. not
super fast, but acceptable, just like before. And non-ascii italic
characters are rendered correctly.

-- 
Feng Li

[-- Attachment #2: Type: text/html, Size: 1096 bytes --]

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

* Re: font-backend
  2008-02-22 14:00                     ` font-backend finalpatch
  2008-02-22 16:43                       ` font-backend Stefan Monnier
@ 2008-02-23  0:25                       ` YAMAMOTO Mitsuharu
  2008-02-23  2:23                         ` font-backend Jason Rumney
  2008-02-23  2:28                       ` font-backend Jason Rumney
  2 siblings, 1 reply; 31+ messages in thread
From: YAMAMOTO Mitsuharu @ 2008-02-23  0:25 UTC (permalink / raw)
  To: finalpatch; +Cc: emacs-devel

>>>>> On Fri, 22 Feb 2008 14:00:00 +0000 (UTC), finalpatch <fengli@gmail.com> said:

> obvious problems I have noticed. 1) the rendering speed is painfully
> slow, even on my core2 cpu. 

I'm developing a font backend driver using Core Text, which is a new
framework available from Mac OS X 10.5.  It was slower than Emacs 22
first, but now it shows good performance with caching the results of
metrics calculations.

				     YAMAMOTO Mitsuharu
				mituharu@math.s.chiba-u.ac.jp




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

* Re: font-backend
  2008-02-23  0:25                       ` font-backend YAMAMOTO Mitsuharu
@ 2008-02-23  2:23                         ` Jason Rumney
  2008-02-23  2:44                           ` font-backend YAMAMOTO Mitsuharu
  0 siblings, 1 reply; 31+ messages in thread
From: Jason Rumney @ 2008-02-23  2:23 UTC (permalink / raw)
  To: YAMAMOTO Mitsuharu; +Cc: finalpatch, emacs-devel

YAMAMOTO Mitsuharu wrote:
> I'm developing a font backend driver using Core Text, which is a new
> framework available from Mac OS X 10.5.  It was slower than Emacs 22
> first, but now it shows good performance with caching the results of
> metrics calculations.
>   
Yes, it is definitely the metrics calculations that are slowing things 
down on Windows too. I added some code to cache the metrics for ASCII 
characters some time ago, but the problem remains for buffers containing 
many non-ASCII characters.






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

* Re: font-backend
  2008-02-22 14:00                     ` font-backend finalpatch
  2008-02-22 16:43                       ` font-backend Stefan Monnier
  2008-02-23  0:25                       ` font-backend YAMAMOTO Mitsuharu
@ 2008-02-23  2:28                       ` Jason Rumney
  2008-02-23  2:38                         ` font-backend Feng Li
  2 siblings, 1 reply; 31+ messages in thread
From: Jason Rumney @ 2008-02-23  2:28 UTC (permalink / raw)
  To: finalpatch; +Cc: emacs-devel

finalpatch wrote:
> 2) it cannot render italic font correctly for non-ascii
> chars(they are displayed as boxes).
>   

I can't reproduce this. Was the problem perhaps fixed by recent changes?





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

* Re: font-backend
  2008-02-23  2:28                       ` font-backend Jason Rumney
@ 2008-02-23  2:38                         ` Feng Li
  0 siblings, 0 replies; 31+ messages in thread
From: Feng Li @ 2008-02-23  2:38 UTC (permalink / raw)
  To: Jason Rumney; +Cc: emacs-devel

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

On Sat, Feb 23, 2008 at 1:28 PM, Jason Rumney <jasonr@gnu.org> wrote:

> finalpatch wrote:
> > 2) it cannot render italic font correctly for non-ascii
> > chars(they are displayed as boxes).
> >
>
> I can't reproduce this. Was the problem perhaps fixed by recent changes?
>
>
how to reproduce:

1) start emacs with "runemacs -q"
2) load a txt file with some chinese text in it. it should look fine at this
stage.
3) shift-left click the emacs window, and select an italic variant of a font
.
4) the characters become boxes.

-- 
Feng Li

[-- Attachment #2: Type: text/html, Size: 841 bytes --]

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

* Re: font-backend
  2008-02-23  2:23                         ` font-backend Jason Rumney
@ 2008-02-23  2:44                           ` YAMAMOTO Mitsuharu
  2008-02-24 15:24                             ` font-backend Jason Rumney
  0 siblings, 1 reply; 31+ messages in thread
From: YAMAMOTO Mitsuharu @ 2008-02-23  2:44 UTC (permalink / raw)
  To: Jason Rumney; +Cc: finalpatch, emacs-devel

>>>>> On Sat, 23 Feb 2008 02:23:26 +0000, Jason Rumney <jasonr@gnu.org> said:

>> I'm developing a font backend driver using Core Text, which is a
>> new framework available from Mac OS X 10.5.  It was slower than
>> Emacs 22 first, but now it shows good performance with caching the
>> results of metrics calculations.

> Yes, it is definitely the metrics calculations that are slowing
> things down on Windows too. I added some code to cache the metrics
> for ASCII characters some time ago, but the problem remains for
> buffers containing many non-ASCII characters.

But it still does get_frame_dc and SelectObject even for the
ASCII-only case.  I think this can be deferred until cache miss
happens.

FWIW, below shows what the Core Text font backend is doing on the
metrics caching.  I assume the height of a valid metrics value is
always nonnegative.


				     YAMAMOTO Mitsuharu
				mituharu@math.s.chiba-u.ac.jp

/* The actual structure for Mac Core Text font that can be casted to
   struct font.  */

struct ctfont_info
{
  struct font font;
  CTFontRef ctfont;
  unsigned synthetic_italic_p : 1;
  unsigned synthetic_bold_p : 1;
  short metrics_nrows;
  struct font_metrics **metrics;
};

#define METRICS_NCOLS_PER_ROW	(128)

enum metrics_status
  {
    METRICS_INVALID = -1,  /* metrics entry is invalid */
    METRICS_WIDTH_VALID = -2 /* width is valid but others are invalid */
  };

#define METRICS_STATUS(metrics)	((metrics)->ascent + (metrics)->descent)
#define METRICS_SET_STATUS(metrics, status) \
  ((metrics)->ascent = 0, (metrics)->descent = (status))

static int
ctfont_glyph_extents (font, glyph, metrics)
     struct font *font;
     CGGlyph glyph;
     struct font_metrics *metrics;
{
  struct ctfont_info *ctfont_info = (struct ctfont_info *) font;
  CTFontRef ctfont = ctfont_info->ctfont;
  int row, col;
  struct font_metrics *cache;
  int width;

  row = glyph / METRICS_NCOLS_PER_ROW;
  col = glyph % METRICS_NCOLS_PER_ROW;
  if (row >= ctfont_info->metrics_nrows)
    {
      ctfont_info->metrics =
	xrealloc (ctfont_info->metrics,
		 sizeof (struct font_metrics *) * (row + 1));
      bzero (ctfont_info->metrics + ctfont_info->metrics_nrows,
	     (sizeof (struct font_metrics *)
	      * (row + 1 - ctfont_info->metrics_nrows)));
      ctfont_info->metrics_nrows = row + 1;
    }
  if (ctfont_info->metrics[row] == NULL)
    {
      struct font_metrics *new;
      int i;

      new = xmalloc (sizeof (struct font_metrics) * METRICS_NCOLS_PER_ROW);
      for (i = 0; i < METRICS_NCOLS_PER_ROW; i++)
	METRICS_SET_STATUS (new + i, METRICS_INVALID);
      ctfont_info->metrics[row] = new;
    }
  cache = ctfont_info->metrics[row] + col;

  if (METRICS_STATUS (cache) == METRICS_INVALID)
    {
      cache->width =
	CTFontGetAdvancesForGlyphs (ctfont, kCTFontDefaultOrientation,
				    &glyph, NULL, 1) + 0.5;
      METRICS_SET_STATUS (cache, METRICS_WIDTH_VALID);
    }
  width = cache->width;

  if (metrics)
    {
      if (METRICS_STATUS (cache) == METRICS_WIDTH_VALID)
	{
	  CGRect bounds;

	  bounds = CTFontGetBoundingRectsForGlyphs (ctfont,
						    kCTFontDefaultOrientation,
						    &glyph, NULL, 1);
	  if (ctfont_info->synthetic_italic_p)
	    bounds = CGRectApplyAffineTransform (bounds, synthetic_italic_atfm);
	  if (ctfont_info->synthetic_bold_p)
	    {
	      CGFloat d = - synthetic_bold_factor * CTFontGetSize (ctfont) / 2;

	      bounds = CGRectInset (bounds, d, d);
	    }
	  bounds = CGRectIntegral (bounds);
	  cache->lbearing = CGRectGetMinX (bounds);
	  cache->rbearing = CGRectGetMaxX (bounds);
	  cache->width = width;
	  cache->ascent = CGRectGetMaxY (bounds);
	  cache->descent = -CGRectGetMinY (bounds);
	}
      *metrics = *cache;
    }

  return width;
}

static int
ctfont_text_extents (font, code, nglyphs, metrics)
     struct font *font;
     unsigned *code;
     int nglyphs;
     struct font_metrics *metrics;
{
  int width, i;

  BLOCK_INPUT;
  width = ctfont_glyph_extents (font, code[0], metrics);
  for (i = 1; i < nglyphs; i++)
    {
      struct font_metrics m;
      int w = ctfont_glyph_extents (font, code[i], metrics ? &m : NULL);

      if (metrics)
	{
	  if (width + m.lbearing < metrics->lbearing)
	    metrics->lbearing = width + m.lbearing;
	  if (width + m.rbearing > metrics->rbearing)
	    metrics->rbearing = width + m.rbearing;
	  if (m.ascent > metrics->ascent)
	    metrics->ascent = m.ascent;
	  if (m.descent > metrics->descent)
	    metrics->descent = m.descent;
	}
      width += w;
    }
  UNBLOCK_INPUT;

  if (metrics)
    metrics->width = width;

  return width;
}




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

* Re: font-backend
  2008-02-23  2:44                           ` font-backend YAMAMOTO Mitsuharu
@ 2008-02-24 15:24                             ` Jason Rumney
  2008-02-25 10:03                               ` font-backend finalpatch
  0 siblings, 1 reply; 31+ messages in thread
From: Jason Rumney @ 2008-02-24 15:24 UTC (permalink / raw)
  To: YAMAMOTO Mitsuharu; +Cc: finalpatch, emacs-devel

YAMAMOTO Mitsuharu wrote:
> But it still does get_frame_dc and SelectObject even for the
> ASCII-only case.  I think this can be deferred until cache miss
> happens.
>   
This indeed may result in a minor improvement. I have changed it to 
defer these operations.





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

* Re: font-backend
  2008-02-24 15:24                             ` font-backend Jason Rumney
@ 2008-02-25 10:03                               ` finalpatch
  0 siblings, 0 replies; 31+ messages in thread
From: finalpatch @ 2008-02-25 10:03 UTC (permalink / raw)
  To: emacs-devel

Jason Rumney <jasonr <at> gnu.org> writes:

> 
> YAMAMOTO Mitsuharu wrote:
> > But it still does get_frame_dc and SelectObject even for the
> > ASCII-only case.  I think this can be deferred until cache miss
> > happens.
> >   
> This indeed may result in a minor improvement. I have changed it to 
> defer these operations.
> 
> 

Wow~~, that's not just minor improvement. I tested the trunk head today,
it's much faster now, quite comparable to the before font-backend version.

Great work!






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

end of thread, other threads:[~2008-02-25 10:03 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-15  0:43 23.0.60;show-paren-mode causes abnormal vertical lines on Win32 =?gb18030?B?0+G94A==?=
2008-02-15  9:12 ` 23.0.60; show-paren-mode " Jason Rumney
2008-02-15 14:24   ` Stefan Monnier
2008-02-15 21:44     ` Jason Rumney
2008-02-15 23:02       ` Juanma Barranquero
2008-02-15 23:16         ` Jason Rumney
2008-02-15 23:27           ` Juanma Barranquero
2008-02-15 23:31             ` font-backend [was Re: 23.0.60; show-paren-mode causes abnormal vertical lines on Win32.] Glenn Morris
2008-02-15 23:47               ` font-backend Miles Bader
2008-02-16 13:18                 ` font-backend Eli Zaretskii
2008-02-16 13:27                   ` font-backend Miles Bader
2008-02-16 17:12                   ` font-backend Jason Rumney
2008-02-17  9:29                   ` font-backend Kenichi Handa
2008-02-22 14:00                     ` font-backend finalpatch
2008-02-22 16:43                       ` font-backend Stefan Monnier
2008-02-23  0:15                         ` font-backend Feng Li
2008-02-23  0:25                       ` font-backend YAMAMOTO Mitsuharu
2008-02-23  2:23                         ` font-backend Jason Rumney
2008-02-23  2:44                           ` font-backend YAMAMOTO Mitsuharu
2008-02-24 15:24                             ` font-backend Jason Rumney
2008-02-25 10:03                               ` font-backend finalpatch
2008-02-23  2:28                       ` font-backend Jason Rumney
2008-02-23  2:38                         ` font-backend Feng Li
2008-02-16  3:08           ` 23.0.60; show-paren-mode causes abnormal vertical lines on Win32 Stefan Monnier
2008-02-16  6:01             ` Dan Nicolaescu
2008-02-19 15:51               ` Stefan Monnier
2008-02-19 20:44                 ` Dan Nicolaescu
2008-02-17 13:22             ` Richard Stallman
     [not found]   ` <42b562540802150241wb2d1b66n2f0b50b6c9bbca36@mail.gmail.com>
2008-02-15 23:10     ` Jason Rumney
2008-02-15 23:15       ` Drew Adams
2008-02-17  4:57   ` yu jie

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