Variable: consult-source-project-recent-file
consult-source-project-recent-file is a variable defined in
consult.el.
Value
(:name "Project File" :narrow 102 :category file :face consult-file
:history file-name-history :state consult--file-state :new
#[257 "\300\301\302 \"!\207"
[consult--file-action expand-file-name
consult--project-root]
5
("/root/.emacs.d/elpa/consult-20260805.1130/consult.elc"
. 181262)]
:enabled
#[0 "\205 \207" [consult-project-function recentf-mode]
1]
:items
#[0
"\302 \211\205T\211G\303 \304\305\300!\205\211\203P\211@\211\306H\307=\204(\304\310!)\262\311\"\204K\312\"\203K\211\304O\211\313\232\203C\210\314\211BB\262\210\210A\202\210\266\202\237\207"
[recentf-list file-name-handler-alist consult--project-root
consult--buffer-file-hash nil boundp 0 47
expand-file-name gethash string-prefix-p ""
"./"]
9])
Documentation
Project file source for consult-buffer.
Source Code
;; Defined in ~/.emacs.d/elpa/consult-20260805.1130/consult.el
(defvar consult-source-project-recent-file
`( :name "Project File"
:narrow ?f
:category file
:face consult-file
:history file-name-history
:state ,#'consult--file-state
:new
,(lambda (file)
(consult--file-action
(expand-file-name file (consult--project-root))))
:enabled
,(lambda ()
(and consult-project-function
recentf-mode))
:items
,(lambda ()
(when-let* ((root (consult--project-root)))
(let ((len (length root))
(ht (consult--buffer-file-hash))
items)
(dolist (file (bound-and-true-p recentf-list) (nreverse items))
;; Emacs 29 abbreviates file paths by default, see
;; `recentf-filename-handlers'. I recommend to set
;; `recentf-filename-handlers' to nil to avoid any slow down.
(unless (eq (aref file 0) ?/)
(let (file-name-handler-alist) ;; No Tramp slowdown please.
(setq file (expand-file-name file))))
(when (and (not (gethash file ht)) (string-prefix-p root file))
(let ((part (substring file len)))
(when (equal part "") (setq part "./"))
(push (cons part file) items))))))))
"Project file source for `consult-buffer'.")