unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Ista Zahn <istazahn@gmail.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: 21077@debbugs.gnu.org
Subject: bug#21077: 24.5; Slow printing in inferior python buffer with python-shell-enable-font-lock
Date: Fri, 31 Jul 2015 21:46:28 -0400	[thread overview]
Message-ID: <CA+vqiLHBzaff+SJOJvzg1QVdWwmZZy7AWMvt6dU=rwxPugGBwQ@mail.gmail.com> (raw)
In-Reply-To: <jwvzj2c9e76.fsf-monnier+emacsbugs@gnu.org>

On Fri, Jul 31, 2015 at 6:07 PM, Stefan Monnier
<monnier@iro.umontreal.ca> wrote:
>>> As mentioned, font-lock is but one of the parts of Emacs that slow down
>>> as lines get longer.
>> I'm not all that concerned with things slowing down slightly,
>
> Neither am I.  All the others I care about also end up rendering
> Emacs unusable.  They just show up at different times, or start biting
> you at different line lengths.
>
>>> In the case of comint modes, rather than disable font-lock we should
>>> refrain from font-locking the text after the last \n (since that's the
>>> line that keeps getting expanded, so we end up re-font-locking it O(N)
>>> times for a line of length N, for a total amount of work of O(N^2)).
>>> IIRC I have a similar hack in grep.el or compile.el.
>> OK, but unless there are clear plans to fix this soon the default value of
>> python-shell-enable-font-lock should be changed to nil until such time as a
>> fix is in place.
>
> I disagree.  All comint modes suffer from this problem, AFAIK, and
> I don't see why Python programs would be more likely to generate long
> lines than programs in other languages.

Try this with the currently released version of emacs:

1. Start emacs with 'emacs -Q'
2. Type 'M-x ielm' then '(number-sequence 1 9999)'
3. Type 'M-x eshell' then 'number-sequence 1 9999 RET'
4. Type 'M-x shell' then 'python -c "print(list(range(9999)))" RET'
5. Type 'M-x run-python' then 'print(list(range(9999))) RET'

For me 1-3 print relatively quickly, 4 prints relatively slowly, and
_only_ 5 is so slow that I consider it non-functional. This bug report
is about issue 5 above.

Of course if you have a patch to make 4 faster as well that's great.
But 5 is the bug I'm reporting here, and I would really appreciate it
someone would either accept my suggestion for fixing it or provide an
alternative fix that does the job better.

Best,
Ista



>
> But yes, I'd really be happy to see some tentative patch along the lines
> I outlined above.
>
>
>         Stefan





  reply	other threads:[~2015-08-01  1:46 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-16 16:42 bug#21077: 24.5; Slow printing in inferior python buffer with python-shell-enable-font-lock Ista Zahn
2015-07-16 18:34 ` Eli Zaretskii
2015-07-16 19:09   ` Ista Zahn
2015-07-16 19:34     ` Eli Zaretskii
2015-07-16 19:50       ` Ista Zahn
2015-07-17  6:53         ` Eli Zaretskii
2015-07-17  8:33           ` Stefan Monnier
2015-07-17  8:56             ` Rasmus
2015-07-29 20:50             ` Ista Zahn
2015-07-30 23:19               ` Stefan Monnier
2015-07-31  0:27                 ` Ista Zahn
2015-07-31 22:07                   ` Stefan Monnier
2015-08-01  1:46                     ` Ista Zahn [this message]
2015-08-01 12:36                       ` Wolfgang Jenkner
2015-08-01 16:26                         ` Ista Zahn
2015-08-03 23:57                           ` Wolfgang Jenkner
2016-07-14  1:31                           ` npostavs
2015-08-01 12:42                 ` Wolfgang Jenkner
2015-08-03 21:41                   ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CA+vqiLHBzaff+SJOJvzg1QVdWwmZZy7AWMvt6dU=rwxPugGBwQ@mail.gmail.com' \
    --to=istazahn@gmail.com \
    --cc=21077@debbugs.gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).