Por que helm-recentf não é confuso?

8

Por alguma razão, a correspondência difusa não está funcionando helm-recentfpara mim (embora esteja funcionando em qualquer outro lugar).

Eu tenho as seguintes configurações no meu arquivo .emacs:

(setq helm-recentf-fuzzy-match t
      helm-buffers-fuzzy-matching t
      helm-completion-in-region-fuzzy-match t
      helm-mode-fuzzy-match t)

Suponho que haja alguma sobreposição com a funcionalidade dessas configurações, mas não vejo por que alguma delas deveria estragar helm-recentf-fuzzy-match. Além disso, eu tentei configuração apenas helm-recentf-fuzzy-matchpara te removido as outras definições, e ainda não é bom. Além disso, quando eu verifico o valor para helm-recentf-fuzzy-matchisso, recebo:

helm-recentf-fuzzy-match is a variable defined in `helm-files.el'. Its value is t Original value was nil

Estou com um bug ou há algo que preciso configurar / ter configurado errado? Obrigado!

Atualização e detalhes:

Estou usando o Emacs 24.5 e o Helm 20150704.1247 .

Tentei carregar o emacs sem o meu init, e apenas ative o modo de leme com correspondência difusa para o recentf, e ele ainda não funciona. Além disso, se eu usar helm-mini, tenho uma correspondência difusa na Buffersseção, mas não a Recentfseção ...

elethan
fonte
1
Está funcionando para mim. Qual leme você está usando? Qual versão do Emacs? Você pode dividir o seu init?
precisa saber é o seguinte

Respostas:

6

Eu tive o mesmo problema que você: olhando a fonte para a definição de variável, parece que o formulário que ele está usando para declarar que não é mais válido no Emacs 24:

(defcustom helm-recentf-fuzzy-match nil
"Enable fuzzy matching in `helm-source-recentf' when non--nil."
  :group 'helm-files
  :type 'boolean
  :set (lambda (var val)
     (set var val)
     (setq helm-source-recentf
           (helm-make-source "Recentf" 'helm-recentf-source
             :fuzzy-match helm-recentf-fuzzy-match))))

Especificamente, a :setpalavra - chave não parece ser válida, portanto, o lambda que redefine a fonte nunca é chamado.

Para contornar isso, redecorei a fonte manualmente no meu init.elarquivo e funcionou bem.

;; helm-recentf-fuzzy-match var is broken: redeclare it manually
(setq helm-source-recentf 
  (helm-make-source "Recentf" 'helm-recentf-source
    :fuzzy-match t))
jkp
fonte
Obrigado, ainda é a única maneira de fazer o leme-recente funcionar, pelo menos para mim.
Manuel Uberti 29/10