Manomagicamente: D, depois de postar a pergunta, obtive a solução de trabalho removendo uma única citação abaixo no meu .emacs
(setq initial-buffer-choice '(helm-recentf)) ;; Does not work
Para isso:
(setq initial-buffer-choice (helm-recentf)) ;; Works!!!
;; I still haven't tried doing with the built-in recentf only
Ou isto:
(setq initial-buffer-choice 'helm-recentf) ;; Works!!!
Atualizar
Ainda não funciona com a solução acima, na verdade. Abri o arquivo, mas o emacs muda para o scratch
buffer logo depois. Eu tenho que pular para o buffer do arquivo que eu quero. Então ainda precisa de mais ajuda sobre isso.
Atualização 2
Depois de algumas lutas elisp
, consegui este realmente funciona agora:
(require 'recentf) ;; Provided for the whole picture
(require 'helm)
(require 'helm-config)
(defun startwithrecentf()
(buffer-name (find-file (car (helm-recentf))))
)
(setq initial-buffer-choice (startwithrecentf))
Atualização 3
O seguinte é mais compacto. Ele também trata aproximadamente do caso em que o emacs é chamado com argumentos adicionais, ou seja,emacs somefile
(require 'recentf) ;; Provided for the whole picture
(require 'helm)
(require 'helm-config)
(if (< (length command-line-args) 2)
(setq initial-buffer-choice (car (helm-recentf)))
)
startup.el.
Você pode anular tudo isso e ter sua própria ordem de inicialização.