From bf7d95f7b2b052c5cf8c590e63706ab35f1d2dae Mon Sep 17 00:00:00 2001 From: Oleh Krehel Date: Sat, 27 Feb 2016 13:48:11 +0100 Subject: [PATCH] Move read-file-name to :display-transformer-fn * ivy.el (ivy-set-display-transformer): Set 'read-file-name-internal to 'ivy-read-file-transformer. (ivy-read-file-transformer): New defun. (ivy--format): Simplify. --- ivy.el | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/ivy.el b/ivy.el index d500b8e9e..976733244 100644 --- a/ivy.el +++ b/ivy.el @@ -2387,6 +2387,14 @@ SEPARATOR is used to join the candidates." (cl-incf i)))))) str)) +(ivy-set-display-transformer + 'read-file-name-internal 'ivy-read-file-transformer) + +(defun ivy-read-file-transformer (str) + (if (string-match-p "/\\'" str) + (propertize str 'face 'ivy-subdir) + str)) + (defun ivy--format (cands) "Return a string for CANDS suitable for display in the minibuffer. CANDS is a list of strings." @@ -2402,12 +2410,6 @@ CANDS is a list of strings." (cands (cl-subseq cands start end)) (index (- ivy--index start)) transformer-fn) - (cond (ivy--directory - (setq cands (mapcar (lambda (x) - (if (string-match-p "/\\'" x) - (propertize x 'face 'ivy-subdir) - x)) - cands)))) (setq ivy--current (copy-sequence (nth index cands))) (when (setq transformer-fn (ivy-state-display-transformer-fn ivy-last)) (with-ivy-window -- 2.39.2