From mboxrd@z Thu Jan 1 00:00:00 1970 From: Samuel Wales Subject: 8.3 export slower Date: Mon, 24 Aug 2015 12:12:30 -0700 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:42524) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZTxAX-0006Xa-EI for emacs-orgmode@gnu.org; Mon, 24 Aug 2015 15:12:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZTxAW-0002Or-9A for emacs-orgmode@gnu.org; Mon, 24 Aug 2015 15:12:33 -0400 Received: from mail-wi0-x233.google.com ([2a00:1450:400c:c05::233]:33619) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZTxAV-0002NW-UU for emacs-orgmode@gnu.org; Mon, 24 Aug 2015 15:12:32 -0400 Received: by wijp15 with SMTP id p15so87020585wij.0 for ; Mon, 24 Aug 2015 12:12:31 -0700 (PDT) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org i didn't benchmark, but export of a 900 word subtree seems to take 15s in 8.3 (1-2s before 8.3): - command-execute 14966 95% - call-interactively 14966 95% - org-export-dispatch 14633 93% - # 14600 93% - org-ascii-export-to-ascii 14600 93% - org-export-to-file 14600 93% - org-export-as 14600 93% - org-export-get-environment 6493 41% - org-id-find 6441 41% - org-id-update-id-locations 6236 39% - org-get-agenda-file-buffer 6020 38% - find-file-noselect 6016 38% - find-file-noselect-1 6012 38% - after-find-file 5960 38% - normal-mode 5956 37% - funcall 5956 37% - # 5956 37% - set-auto-mode 5956 37% - set-auto-mode-0 3788 24% - org-mode 3788 24% - org-set-startup-visibility 3660 23% - org-cycle-hide-drawers 3168 20% + org-element-at-point 2004 12% + org-flag-drawer 356 2% + org-overview 272 1% org-set-visibility-according-to-property 20 0% + org-cycle-hide-archived-subtrees 8 0% + org-set-regexps-and-options 32 0% + run-mode-hooks 28 0% + org-refresh-effort-properties 24 0% org-update-radio-target-regexp 24 0% + org-macro-initialize-templates 20 0% + funcall 2164 13% + set-auto-mode-1 4 0% + run-hooks 4 0% + funcall 52 0% + create-file-buffer 4 0% + org-find-base-buffer-visiting 4 0% + org-agenda-files 52 0% + file-truename 4 0% org-release-buffers 4 0% + org-id-find-id-in-file 201 1% + org-export--get-inbuffer-options 12 0% + org-element-context 12 0% - run-hook-with-args 5332 34% - mymy-org-export-par-in-inline-fn 5332 34% - org-footnote-normalize 5328 33% - org-footnote-get-definition 3816 24% - byte-code 3816 24% - org-element-context 28 0% + byte-code 28 0% + org-footnote-delete-definitions 976 6% + org-fill-paragraph 312 1% + org-footnote-get-next-reference 168 1% + jit-lock-after-change 16 0% mapconcat 4 0% + org-export--merge-external-footnote-definitions 1703 10% + org-export--delete-comments 860 5% org-update-radio-target-regexp 60 0% + org-set-regexps-and-options 48 0% + org-export-execute-babel-code 28 0% + org-macro-initialize-templates 20 0% + org-export-data 16 0% + org-element-parse-buffer 12 0% + org-export-copy-buffer 8 0% org-element-normalize-string 4 0% + org-ascii-inner-template 4 0% + org-export--dispatch-ui 33 0% + ido-hacks-execute-extended-command 308 1% + next-line 19 0% + profiler-report-toggle-entry 3 0% + previous-line 3 0% + ... 366 2% + redisplay_internal (C function) 297 1% + rcirc-filter 45 0% + timer-event-handler 6 0% i do not know why it is searching 20 files for org id's, as there are no id links. the thing i am doing different from emacs -Q is this, which nicolas suggested, but seems no longer to work in 8.3: (add-hook 'org-export-before-parsing-hook 'mymy-org-export-par-in-inline-fn) (defun mymy-org-export-par-in-inline-fn (backend) "Accept multiple inline footnote paragraphs." (unless (org-export-derived-backend-p backend 'latex) (org-footnote-normalize) ;; =alpha i guess it sticks \par in there for you (while (re-search-forward "\\\\par\\s-*" nil t) (replace-match "\n\n")))) thanks. samuel