Hello, York Zhao <gtdplatf...@gmail.com> 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