* lisp/minibuffer.el (completion--replace): Inherit surrounding properties.
authorStefan Monnier <monnier@iro.umontreal.ca>
Mon, 17 Oct 2011 16:30:02 +0000 (12:30 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Mon, 17 Oct 2011 16:30:02 +0000 (12:30 -0400)
(minibuffer-complete-and-exit): Use it.

Fixes: debbugs:114

lisp/ChangeLog
lisp/minibuffer.el

index 1ebca86..60c2b62 100644 (file)
@@ -1,5 +1,9 @@
 2011-10-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 
+       * minibuffer.el (completion--replace): Inherit surrounding properties
+       (bug#114).
+       (minibuffer-complete-and-exit): Use it.
+
        * comint.el (comint--table-subvert): Quote the all-completions output
        (bug#9160).
 
index acb71d1..38785fc 100644 (file)
@@ -596,7 +596,7 @@ Moves point to the end of the new text."
       (setq end (- end suffix-len))
       (setq newtext (substring newtext 0 (- suffix-len))))
     (goto-char beg)
-    (insert newtext)
+    (insert-and-inherit newtext)
     (delete-region (point) (+ (point) (- end beg)))
     (forward-char suffix-len)))
 
@@ -927,9 +927,7 @@ If `minibuffer-completion-confirm' is `confirm-after-completion',
                      ;; file, so `try-completion' actually completes to
                      ;; that file.
                      (= (length string) (length compl)))
-            (goto-char end)
-            (insert compl)
-            (delete-region beg end))))
+            (completion--replace beg end compl))))
       (exit-minibuffer))
 
      ((memq minibuffer-completion-confirm '(confirm confirm-after-completion))