emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Long lines and bidi [Was: Re: bug#13623: ...]


From: Dmitry Antipov
Subject: Long lines and bidi [Was: Re: bug#13623: ...]
Date: Fri, 08 Feb 2013 17:33:47 +0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2

On 02/06/2013 10:23 PM, Eli Zaretskii wrote:

Another area of redisplay optimizations would be the infamous
very-long-lines use case.  (Personally, I think this one is the single
most important deficiency in the current display engine, by far more
important than any other display problem.)

I tried to scroll (down from the beginning and then up from the end) the
very pathological file (~150M with just ~500 lines) and got the following
profile:

8.59%        emacs  emacs                          [.] bidi_resolve_weak
7.92%        emacs  emacs                          [.] bidi_level_of_next_char
7.81%        emacs  emacs                          [.] get_next_display_element
7.12%        emacs  emacs                          [.] 
move_it_in_display_line_to
6.96%        emacs  emacs                          [.] x_produce_glyphs
5.06%        emacs  libc-2.16.so                   [.] __memcpy_ssse3_back
4.56%        emacs  emacs                          [.] next_element_from_buffer
4.38%        emacs  emacs                          [.] 
bidi_move_to_visually_next
4.26%        emacs  emacs                          [.] scan_buffer
3.04%        emacs  libXft.so.2.3.1                [.] XftCharIndex
2.93%        emacs  emacs                          [.] bidi_fetch_char
2.67%        emacs  emacs                          [.] bidi_cache_iterator_state
2.61%        emacs  emacs                          [.] 
lookup_glyphless_char_display
2.47%        emacs  libXft.so.2.3.1                [.] XftGlyphExtents
2.35%        emacs  emacs                          [.] bidi_resolve_neutral
1.95%        emacs  emacs                          [.] bidi_get_type
1.86%        emacs  emacs                          [.] detect_coding
1.70%        emacs  emacs                          [.] produce_chars
1.50%        emacs  emacs                          [.] bidi_resolve_explicit_1
1.18%        emacs  emacs                          [.] get_per_char_metric
1.13%        emacs  emacs                          [.] 
bidi_cache_search.constprop.4
1.01%        emacs  emacs                          [.] xftfont_text_extents
0.90%        emacs  emacs                          [.] bidi_explicit_dir_char
0.88%        emacs  emacs                          [.] bidi_resolve_explicit
...

So the first question is: is it feasible/possible/desirable to detect that
the buffer has no R2L text at all and automatically force 
bidi-paragraph-direction
to left-to-right and bidi-display-reordering to nil?

Dmitry



reply via email to

[Prev in Thread] Current Thread [Next in Thread]