Fixed ivy-rich and icons.
This commit is contained in:
parent
b94b9918db
commit
4ab38cb58b
77
init.el
77
init.el
|
@ -1,5 +1,5 @@
|
|||
;;; init.el --- tastytea's Emacs init file.
|
||||
;; Time-stamp: <2019-08-07T18:29:11+00:00>
|
||||
;; Time-stamp: <2019-08-07T21:52:55+00:00>
|
||||
|
||||
;;; Commentary:
|
||||
;; I am using this file with Emacs 26, but most of it will probably work with
|
||||
|
@ -622,12 +622,12 @@ With argument, do this that many times."
|
|||
(all-the-icons-ivy-setup)
|
||||
)
|
||||
|
||||
;; Nicer interface for ivy.
|
||||
;; More information in ivy mini-buffers.
|
||||
(use-package ivy-rich
|
||||
;; all-the-icons-ivy would override the ivy-rich switch-buffer improvements.
|
||||
:after (all-the-icons-ivy counsel)
|
||||
:config
|
||||
;; Icons in switch-buffer.
|
||||
(defun my/ivy-rich-switch-buffer-icon (candidate)
|
||||
(defun ivy-rich-switch-buffer-icon (candidate)
|
||||
(with-current-buffer
|
||||
(get-buffer candidate)
|
||||
(let ((icon (all-the-icons-icon-for-mode major-mode)))
|
||||
|
@ -635,26 +635,59 @@ With argument, do this that many times."
|
|||
(all-the-icons-icon-for-mode 'fundamental-mode)
|
||||
icon))))
|
||||
|
||||
;; More detailed buffer view.
|
||||
(setq ivy-rich-display-transformers-list
|
||||
'(ivy-switch-buffer
|
||||
(:columns
|
||||
((my/ivy-rich-switch-buffer-icon :width 2)
|
||||
(ivy-rich-candidate (:width 30))
|
||||
(ivy-rich-switch-buffer-size (:width 7))
|
||||
(ivy-rich-switch-buffer-indicators
|
||||
(:width 4 :face error :align right))
|
||||
(ivy-rich-switch-buffer-major-mode (:width 12 :face warning))
|
||||
(ivy-rich-switch-buffer-project (:width 15 :face success))
|
||||
(ivy-rich-switch-buffer-path
|
||||
(:width (lambda (x)
|
||||
(ivy-rich-switch-buffer-shorten-path
|
||||
x (ivy-rich-minibuffer-width 0.3))))))
|
||||
:predicate
|
||||
(lambda (cand) (get-buffer cand)))))
|
||||
|
||||
(ivy-rich-mode 1)
|
||||
(setcdr (assq t ivy-format-functions-alist) #'ivy-format-function-line)
|
||||
:custom
|
||||
;; It seems I have to copy this whole list to get icons in switch-buffer.
|
||||
(ivy-rich-display-transformers-list
|
||||
(quote
|
||||
(ivy-switch-buffer
|
||||
(:columns
|
||||
((ivy-rich-switch-buffer-icon :width 2)
|
||||
(ivy-rich-candidate
|
||||
(:width 30))
|
||||
(ivy-rich-switch-buffer-size
|
||||
(:width 7))
|
||||
(ivy-rich-switch-buffer-indicators
|
||||
(:width 4 :face error :align right))
|
||||
(ivy-rich-switch-buffer-major-mode
|
||||
(:width 12 :face warning))
|
||||
(ivy-rich-switch-buffer-project
|
||||
(:width 15 :face success))
|
||||
(ivy-rich-switch-buffer-path
|
||||
(:width
|
||||
(lambda
|
||||
(x)
|
||||
(ivy-rich-switch-buffer-shorten-path
|
||||
x (ivy-rich-minibuffer-width 0.3))))))
|
||||
:predicate
|
||||
(lambda
|
||||
(cand)
|
||||
(get-buffer cand)))
|
||||
counsel-M-x
|
||||
(:columns
|
||||
((counsel-M-x-transformer
|
||||
(:width 40))
|
||||
(ivy-rich-counsel-function-docstring
|
||||
(:face font-lock-doc-face))))
|
||||
counsel-describe-function
|
||||
(:columns
|
||||
((counsel-describe-function-transformer
|
||||
(:width 40))
|
||||
(ivy-rich-counsel-function-docstring
|
||||
(:face font-lock-doc-face))))
|
||||
counsel-describe-variable
|
||||
(:columns
|
||||
((counsel-describe-variable-transformer
|
||||
(:width 40))
|
||||
(ivy-rich-counsel-variable-docstring
|
||||
(:face font-lock-doc-face))))
|
||||
counsel-recentf
|
||||
(:columns
|
||||
((ivy-rich-candidate
|
||||
(:width 0.8))
|
||||
(ivy-rich-file-last-modified-time
|
||||
(:face font-lock-comment-face)))))))
|
||||
)
|
||||
|
||||
;; Better search.
|
||||
|
|
Loading…
Reference in New Issue