]> git.eshelyaron.com Git - emacs.git/commitdiff
dired-align-file: Inherit text properties in inserted spaces
authorTino Calancha <tino.calancha@gmail.com>
Wed, 2 Aug 2017 08:52:57 +0000 (17:52 +0900)
committerTino Calancha <tino.calancha@gmail.com>
Wed, 2 Aug 2017 08:53:14 +0000 (17:53 +0900)
* lisp/dired.el (dired-align-file): Inherit text
properties in inserted spaces (Bug#27899).
* test/lisp/dired-tests.el (dired-test-bug27899): Add test.

lisp/dired.el
test/lisp/dired-tests.el

index e1bedb6c73fd0ad4ba28066e3560ccc8b93ebc47..24759c6c9bd0b762476077ba9d1062091f5063fa 100644 (file)
@@ -1205,7 +1205,7 @@ BEG..END is the line where the file info is located."
              (setq file-col (+ spaces file-col))
              (if (> file-col other-col)
                  (setq spaces (- spaces (- file-col other-col))))
-             (insert-char ?\s spaces)
+             (insert-char ?\s spaces 'inherit)
              ;; Let's just make really sure we did not mess up.
              (unless (save-excursion
                        (eq (dired-move-to-filename) (marker-position file)))
index 4ab6b37664b4ed9fd5b554d94b1e3b1a53467d34..c67f37953ca936b48b1cc0ab88ec502c14ec4061 100644 (file)
       (delete-directory dir 'recursive)
       (when (buffer-live-p buf) (kill-buffer buf)))))
 
+(ert-deftest dired-test-bug27899 ()
+  "Test for http://debbugs.gnu.org/27899 ."
+  (let* ((dir (expand-file-name "src" source-directory))
+        (buf (dired (list dir "cygw32.c" "alloc.c" "w32xfns.c" "xdisp.c")))
+         (orig dired-hide-details-mode))
+    (dired-goto-file (expand-file-name "cygw32.c"))
+    (forward-line 0)
+    (unwind-protect
+        (progn
+          (let ((inhibit-read-only t))
+            (dired-align-file (point) (point-max)))
+          (dired-hide-details-mode t)
+          (dired-move-to-filename)
+          (should (eq 2 (current-column))))
+      (dired-hide-details-mode orig))))
 
 (provide 'dired-tests)
 ;; dired-tests.el ends here