Mengapa helm-baru-baru ini tidak kabur?

8

Untuk beberapa alasan, pencocokan fuzzy tidak bekerja helm-recentfuntuk saya (meskipun itu bekerja di tempat lain).

Saya memiliki pengaturan berikut dalam file .emacs saya:

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

Saya berasumsi bahwa ada beberapa tumpang tindih dengan fungsi pengaturan ini, tapi saya tidak melihat mengapa ada di antara mereka yang harus mengacaukannya helm-recentf-fuzzy-match. Juga, saya telah mencoba pengaturan hanya helm-recentf-fuzzy-matchuntuk tdan menghapus pengaturan lain, dan masih tidak bagus. Juga, ketika saya memeriksa nilai untuk helm-recentf-fuzzy-matchini adalah apa yang saya dapatkan:

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

Apakah saya mengalami bug, atau ada sesuatu yang perlu saya konfigurasi / konfigurasi salah? Terima kasih!

Perbarui dan detail:

Saya menggunakan Emacs 24.5 dan Helm 20150704.1247 .

Saya mencoba memuat emacs tanpa init saya, dan hanya menyalakan mode helm dengan pencocokan fuzzy untuk recentf, dan masih tidak berfungsi. Selain itu, jika saya menggunakan helm-minisaya memiliki pencocokan fuzzy di Buffersbagian tersebut, tetapi bukan Recentfbagian ...

Elethan
sumber
1
Ini bekerja untuk saya. Helm apa yang Anda gunakan? Apa versi Emacs? Bisakah Anda membagi dua init Anda?
PythonNut

Jawaban:

6

Saya memiliki masalah yang sama seperti Anda: melihat sumber untuk definisi variabel sepertinya bentuk yang ia gunakan untuk menyatakan itu tidak berlaku di Emacs 24 lagi:

(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))))

Secara khusus :setkata kunci tampaknya tidak valid sehingga lambda yang mengubah sumber tidak pernah dipanggil.

Untuk mengatasinya, saya hanya mendeklarasikan ulang sumber secara manual di init.elfile saya dan itu berfungsi dengan baik.

;; 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
sumber
Terima kasih, ini masih satu-satunya cara untuk membuat helm-baru saja bekerja, setidaknya untukku.
Manuel Uberti