• Juri Linkov's avatar
    Use text properties to save search parameters. (Bug#22479) · 99de04e6
    Juri Linkov authored
    * lisp/isearch.el (isearch-update-ring): Call isearch-string-propertize.
    Delete duplicates with possibly different text properties.
    (isearch-string-propertize)
    (isearch-update-from-string-properties): New functions.
    (with-isearch-suspended, isearch-ring-adjust1):
    Call isearch-update-from-string-properties.
    (isearch-edit-string): Let-bind minibuffer-allow-text-properties to t.
    (isearch-query-replace): Use propertized isearch-string.
    (isearch--lax-regexp-function-p): Simplify.
    
    * lisp/replace.el (query-replace-descr): Rewrite to keep text properties
    non-destructively in the replacement string.
    (query-replace--split-string): Don't remove text properties
    by substring-no-properties.
    (query-replace-read-args): Try to get isearch-regexp-function
    from text-properties.
    (perform-replace): Display parameters in the replacement message.
    
    * lisp/desktop.el (desktop--v2s): Check if text properties are unreadable.
    (Bug#30786)
    99de04e6
desktop.el 63.8 KB