emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] still seeing semi-regular lockups


From: Nicolas Goaziou
Subject: Re: [O] still seeing semi-regular lockups
Date: Sun, 06 Jul 2014 23:31:23 +0200

Hello,

York Zhao <address@hidden> writes:

> The extreme slowness happened again just know. When this happened,
> `org-end-of-line' command took forever until "C-g". M-x
> org-element-cache-reset
> worked this time, i.e., after running `org-element-cache-reset' command
> `org-end-of-line' became fast again.
>
> I was using commit "ca6ecf9", and the buffer was 38xx lines 168K in
> size.

This sounds more like an infloop. Could you send me the document you
were working on[fn:1], in private, and describe what you were doing
before it froze?


Regards,

[fn:1] or at least an equivalent file structure wise, calling the
following function in that document:

  (defun ngz-scramble-contents ()
    (interactive)
    (let ((tree (org-element-parse-buffer)))
      (org-element-map tree '(code comment comment-block example-block 
fixed-width
                                   keyword link node-property plain-text 
verbatim)
        (lambda (obj)
          (case (org-element-type obj)
            ((code comment comment-block example-block fixed-width keyword
                   node-property verbatim)
             (let ((value (org-element-property :value obj)))
               (org-element-put-property
                obj :value (replace-regexp-in-string "[[:alnum:]]" "x" value))))
            (link
             (unless (string= (org-element-property :type obj) "radio")
               (org-element-put-property obj :raw-link "http://orgmode.org";)))
            (plain-text
             (org-element-set-element
              obj (replace-regexp-in-string "[[:alnum:]]" "x" obj)))))
        nil nil nil t)
      (let ((buffer (get-buffer-create "*Scrambled text*")))
        (with-current-buffer buffer
          (insert (org-element-interpret-data tree))
          (goto-char (point-min)))
        (switch-to-buffer buffer))))

If you can reproduce the problem in this new buffer, that's fine too.

-- 
Nicolas Goaziou



reply via email to

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