No veo el comportamiento que usted describe, en absoluto. Para mí, cuando elijo una ocurrencia en el búfer *Occur*
, visita la ocurrencia en el búfer de origen, colocando ese golpe en el medio de la ventana de búfer de origen (verticalmente).
Pero si ve lo que describe, simplemente coloque un código para volver a centrar ventanas occur-mode-find-occurrence-hook
.
Algo como esto. Puede usar cualquier condición de comparación que desee. Aquí, usé "dentro de 10 líneas de la parte superior o inferior", pero podría usar porcentajes, etc.
(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
en MS Windows 7. Cualquier golpe que haga clic (o useRET
) en el búfer de ocurrencia se muestra centrado verticalmente en el búfer de origen.emacs -Q
(en Linux) da el comportamiento que describe. Algo debe estar enterrado en algún lugar es la configuración.