[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[QUESTION] Hope to improve the `org-set-font-lock-defaults` performance
From: |
Christopher M. Miles |
Subject: |
[QUESTION] Hope to improve the `org-set-font-lock-defaults` performance by lazy and limit to current visible area |
Date: |
Thu, 25 May 2023 12:13:18 +0800 |
User-agent: |
mu4e 1.10.3; emacs 30.0.50 |
I'm the developer of Org mode package "org-link-beautify"
https://repo.or.cz/org-link-beautify.git . The package main theory
is to use org-link-parameters `:activate-func` to do link file preview
with generating thumbnail images or file content etc.
But I found it's slow one some big Org file and slow on small Org file
when previewing has a lot.
I locate and studied the source code of the `:activate-func`.
- [X] locate the core function source code
+ [X] org-link-set-parameters
- [X] org-link-parameters
+ [X] :activate-func
+ [X] org-mode major mode definition
+ [X] org-set-font-lock-defaults - Set font lock defaults for the current
buffer.
- [X] variable: org-font-lock-extra-keywords - dynamically scoped
+ [X] org-activate-links
- [X] org-activate-links--text-properties
+ [X] :activate-func
- [X] org-activate-links--overlays
+ [X] :activate-func
I can see the `org-mode` invoked `org-set-font-lock-defaults` soon when
`org-mode` enabled. I hope the link `:activate-func` function can be
called only on link elements which is VISIBLE (means unfolded subtrees
or similar). So org-mode don't need to render all buffer links at
beginning soon. Instead render them as needed as unfolded. (Maybe I read
source code without fully understand the code. If so, correct me,
thanks.)
So, I hope Org mode maintainer can improve this mechanism. Thanks a lot.
Hope this can improve other Org mode extensions performance too.
--
[ stardiviner ]
I try to make every word tell the meaning that I want to express without
misunderstanding.
Blog: https://stardiviner.github.io/
IRC(libera.chat, freenode): stardiviner, Matrix: stardiviner
GPG: F09F650D7D674819892591401B5DF1C95AE89AC3
signature.asc
Description: PGP signature
- [QUESTION] Hope to improve the `org-set-font-lock-defaults` performance by lazy and limit to current visible area,
Christopher M. Miles <=