4

Helm 具有内置helm-mini命令,其中包含buffersrecentf在其源代码中。

(setq helm-source-buffers-list
      (helm-make-source "Buffers" 'helm-source-buffers)))
(helm :sources helm-mini-default-sources
      :buffer "*helm mini*"
      :truncate-lines t)

还有一个包 helm recent dirs 提供了 helm 接口,recentd 它使用它'(helm-source-dired-recent-dirs)作为它的源。

我正在尝试将这两者结合起来,所以我将其添加到 helm-mini

(append helm-mini-default-sources '(helm-source-dired-recent-dirs))

但它不起作用。我错过了什么吗?

4

1 回答 1

5

append表单不会更改 的值helm-mini-default-sources,因此它(即 )M-x helm-mini不起作用。您可以组合setqappend或只是add-to-list

(setq helm-mini-default-sources
      (append helm-mini-default-sources'(helm-source-dired-recent-dirs)))
;; or
(add-to-list 'helm-mini-default-sources 'helm-source-dired-recent-dirs 'append)

但更灵活的方法是使用纯文本setq,因为您可以选择来源及其顺序:

(setq helm-mini-default-sources '(helm-source-buffers-list
                                  helm-source-dired-recent-dirs
                                  helm-source-recentf
                                  helm-source-buffer-not-found))

不需要自己写helm-mini函数,用内置的就够了。

于 2015-06-14T08:20:03.287 回答