]> git.eshelyaron.com Git - emacs.git/commitdiff
Eglot: require optional text-property-search.el
authorJoão Távora <joaotavora@gmail.com>
Fri, 7 Apr 2023 18:45:28 +0000 (19:45 +0100)
committerJoão Távora <joaotavora@gmail.com>
Fri, 7 Apr 2023 18:45:28 +0000 (19:45 +0100)
Originally reported in
https://github.com/joaotavora/eglot/discussions/1201.

Also check for text-property-search-forward before using it, so we
won't break on Emacs 26.3.  At this point, better start relying on
compat.el, I guess.

* lisp/progmodes/eglot.el (eglot--format-markup): Check for
text-property-search-forward.

lisp/progmodes/eglot.el

index da7e53730e73bf31e74ce718698597e6d8fc9a1d..8e665e28a53ef694d0c10a01e36add7d4cf5961e 100644 (file)
   (require 'subr-x))
 (require 'filenotify)
 (require 'ert)
+(require 'text-property-search nil t)
 
 ;; These dependencies are also GNU ELPA core packages.  Because of
 ;; bug#62576, since there is a risk that M-x package-install, despite
@@ -1673,9 +1674,10 @@ Doubles as an indicator of snippet support."
         (font-lock-ensure)
         (goto-char (point-min))
         (let ((inhibit-read-only t))
-          (while (setq match (text-property-search-forward 'invisible))
-            (delete-region (prop-match-beginning match)
-                           (prop-match-end match))))
+          (when (fboundp 'text-property-search-forward) ;; FIXME: use compat
+            (while (setq match (text-property-search-forward 'invisible))
+              (delete-region (prop-match-beginning match)
+                             (prop-match-end match)))))
         (string-trim (buffer-string))))))
 
 (define-obsolete-variable-alias 'eglot-ignored-server-capabilites