2016-04-23 18 views

Antwort

0

Ich verwende nicht helm, aber ich mache dies für isearch. Finden Sie heraus, welche Funktion tatsächlich zu einer Zeile springt (vielleicht die aufgerufene Funktion, z. B. helm-semantic-or-imenu, vielleicht eine interne Hilfsfunktion, wie es bei isearch der Fall ist), und fügen Sie dann den folgenden Hinweis hinzu.

(defun recenter-no-redraw (&optional arg) 
    "Like `recenter', but no redrawing." 
    (interactive "P") 
    (let ((recenter-redisplay nil)) 
    (recenter arg))) 

(advice-add 'isearch-search 
      :after 
      (lambda (&rest args) 
       "Recenter" 
       (when isearch-success 
       (recenter-no-redraw)))) 

Ich kann mich nicht erinnern, warum ich eine nicht-Nachziehen Version von recenter definiert (ich habe es wie die seit Jahren). Es sollte auch mit Plain recenter funktionieren.

+0

Es funktioniert! Ich habe verwendet: '(Beratung-hinzufügen 'Helm-semantic-oder-imenu: nach (Lambda (und Rest args) (center-no-redraw))) Vielen Dank! – AhLeung