branch: externals/guess-language
commit e13f5a9c10b8560d3fb9c7808af2208271ee25ab
Author: Titus von der Malsburg <malsb...@posteo.de>
Commit: Titus von der Malsburg <malsb...@posteo.de>

    (Re)compile regexps when necessary.
    
    Only on demand, not at load time.
---
 guess-language.el | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/guess-language.el b/guess-language.el
index 68dcafc..75baf6d 100644
--- a/guess-language.el
+++ b/guess-language.el
@@ -43,6 +43,9 @@ languages are:
   :type 'integer
   :group 'guess-language)
 
+(defvar guess-language-regexps nil
+  "The regular expressions that are used to count trigrams.")
+
 (defun guess-language-load-trigrams ()
   (cl-loop
    for lang in guess-language-languages
@@ -59,9 +62,9 @@ languages are:
          for regexp = (concat "\\(" regexp "\\)")
          collect (cons (car lang) regexp))))
 
-(with-eval-after-load "guess-language" (guess-language-compile-regexps))
-
 (defun guess-language (beginning end)
+  (unless guess-language-regexps
+    (guess-language-compile-regexps))
   (when (cl-set-exclusive-or guess-language-languages (mapcar #'car 
guess-language-regexps))
     (guess-language-compile-regexps))
   (let ((tally (cl-loop

Reply via email to