Ich sehe das Verhalten, das Sie beschreiben, überhaupt nicht. Wenn ich ein Vorkommen im Puffer auswähle, wird *Occur*
das Vorkommen im Quellpuffer aufgerufen und dieser Schlag in die Mitte des Quellpufferfensters (vertikal) gestellt.
Wenn Sie jedoch sehen, was Sie beschreiben, setzen Sie einfach einen Code zum erneuten Zentrieren von Fenstern ein occur-mode-find-occurrence-hook
.
Etwas wie das. Sie können eine beliebige Vergleichsbedingung verwenden. Hier habe ich "innerhalb von 10 Zeilen von oben oder unten" verwendet, aber Sie können Prozentsätze usw. verwenden.
(defun foo ()
(let ((line (line-number-at-pos)))
(cond ((<= line (+ (line-number-at-pos (window-start)) 10))
(recenter 10))
((>= line (- (line-number-at-pos (window-end)) 10))
(recenter -10)))))
(add-hook 'occur-mode-find-occurrence-hook 'foo)
emacs -Q
unter MS Windows 7. Alle Treffer, auf die ich im Auftrittspuffer klicke (oder die ich verwendeRET
), werden vertikal zentriert im Quellpuffer angezeigt.emacs -Q
(unter Linux) gibt das Verhalten, das Sie beschreiben. Irgendwo muss etwas begraben sein, ist das Setup.