From 67a516cf0dbc15bff66359031a724f1d60e5f0c6 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Mon, 26 Aug 2024 16:22:32 -0400 Subject: [PATCH] perf(org): call yas-reload-all on TAB only once In cases where the user has an empty snippets library (or no snippets for the mode at point), the expensive `yas-reload-all` function would be called each time you press tab. Fix: #8025 --- modules/lang/org/autoload/org.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/lang/org/autoload/org.el b/modules/lang/org/autoload/org.el index 2baf97e79..7b8b3b012 100644 --- a/modules/lang/org/autoload/org.el +++ b/modules/lang/org/autoload/org.el @@ -486,7 +486,8 @@ Made for `org-tab-first-hook'." (evil-emacs-state-p)) (or (and (bound-and-true-p yas--tables) (gethash major-mode yas--tables)) - (progn (yas-reload-all) t)) + (with-memoization (get 'yas-reload-all 'reloaded) + (always (yas-reload-all)))) (yas--templates-for-key-at-point)) (yas-expand) t)