[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#16832: Emacs goes crazy when deleting lines
From: |
Fabrice Niessen |
Subject: |
bug#16832: Emacs goes crazy when deleting lines |
Date: |
Thu, 20 Mar 2014 12:33:26 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (windows-nt) |
Nicolas Goaziou wrote:
> Eli Zaretskii <eliz@gnu.org> writes:
>
>> Thanks. So this looks like a problem with Org Mode. In particular,
>> org-element-inline-babel-call-successor takes a lot of time in this
>> case. That function traverses the buffer from top to bottom:
>>
>> (while (search-forward "call_" nil t)
>> (save-excursion
>> (goto-char (match-beginning 0))
>> (when (looking-at org-babel-inline-lob-one-liner-regexp)
>> (throw 'exit (cons 'inline-babel-call (point)))))))))
>
> This one is an updated function, which doesn't match posted report.
> I expect it to be faster than the previous implementation. It would be
> nice to have a new profiler report, though.
New test done just now. Still too slow (see video on
http://screencast.com/t/elBEfuZtd62), but much, much less...
There is an order of magnitude with the previous performance!
Excellent.
Environment:
- GNU Emacs 24.3.50.1 (i686-pc-mingw32) of 2014-03-15 on LEG570
- Org-mode version 8.2.5h (release_8.2.5h-808-g60a6c0), fetched 10 mins
ago
Performance report:
--8<---------------cut here---------------start------------->8---
- ... 2357 97%
- ad-activate 2343 97%
- ad-activate-advised-definition 2343 97%
- ad-make-cache-id 2343 97%
- ad-arglist 2343 97%
- require 2343 97%
- apply 2343 97%
- ad-Advice-require 2343 97%
- let 2343 97%
- let* 2343 97%
- org-element-at-point 2342 97%
- save-excursion 2342 97%
- save-restriction 2342 97%
- let 2342 97%
- cond 2342 97%
- org-element--parse-to 2342 97%
- catch 2342 97%
- save-excursion 2342 97%
- save-restriction 2342 97%
- let* 2342 97%
- let* 2017 83%
- prog1 2017 83%
- catch 2017 83%
- while 2017 83%
- if 2017 83%
- progn 2017 83%
- setq 2017 83%
- org-element--get-next-object-candidates
2017 83%
- delq 2017 83%
- if 2017 83%
- mapcar 2017 83%
- #<lambda 0x1741100e> 2017 83%
- funcall 2017 83%
- org-element-latex-or-entity-successor
912 37%
- save-excursion 912 37%
- let 912 37%
if 912 37%
- org-element-link-successor
389 16%
- save-excursion 389 16%
- let 389 16%
if 389 16%
- org-element-line-break-successor
215 8%
- save-excursion 215 8%
- let 215 8%
and 215 8%
- org-element-inline-src-block-successor
99 4%
- save-excursion 99 4%
if 99 4%
+ org-element-macro-successor
53 2%
+ org-element-footnote-reference-successor
53 2%
+ org-element-statistics-cookie-successor
53 2%
+ org-element-timestamp-successor
51 2%
+ org-element-target-successor
50 2%
+ org-element-radio-target-successor
49 2%
+ org-element-export-snippet-successor
47 1%
+ org-element-sub/superscript-successor
37 1%
+ org-element-text-markup-successor
8 0%
intern 1 0%
+ let 325 13%
+ cond 1 0%
Automatic GC 14 0%
+ flyspell-post-command-hook 28 1%
+ command-execute 17 0%
+ redisplay_internal (C function) 12 0%
--8<---------------cut here---------------end--------------->8---
Best regards,
Fabrice
--
Fabrice Niessen
Leuven, Belgium
http://www.pirilampo.org/