Bei der Ausführung search/isearch
in einem Text ist es manchmal wünschenswert, einige Zeilen nach der hervorgehobenen gesuchten Zeichenfolge zu sehen. Mit anderen Worten, um zu vermeiden, dass sich das hervorgehobene Wort am unteren Rand des Fensters befindet.
Wenn wir beispielsweise den folgenden Text in einem Puffer haben, versuchen Sie, das letzte Wort zu suchen, das Sie sehen können. Für mich ist es das Wort Prinzipien (da ich den Rahmen maximiert habe). Das markierte Wort (in meiner Situation das Wort Prinzipien ) befindet sich am unteren Rand des Bildschirms. Ich möchte immer einige Zeilen (wenn möglich) nach dem Wort , um zu sehen Grundsätzen nach Suche.
Surrounded
occasional
pianoforte
alteration
unaffected
impossible
Perceived
knowledge
certainly
Although
moreover
mistaken
kindness
horrible
distance
marriage
country
demesne
Bachelor
domestic
extended
doubtful
Greatly
Improved
provided
Dwelling
speedily
ignorant
steepest
Admiration
instrument
affronting
invitation
reasonably
ecstatic
wondered
disposal
curiosity
shameless
explained.
sincerity
extremity
additions
principles
Carriage
Remainder
household
direction
zealously
Sufficient
motionless
compliment
stimulated
assistance
Antworten:
Funktioniert überall, nicht nur während
isearch
.scroll-margin
. Standard: 0. Anzahl der Randlinien am oberen und unteren Rand eines Fensters. Zentrieren Sie das Fenster neu, wenn der Punkt innerhalb dieser vielen Zeilen oben oder unten im Fenster liegt.quelle
M-x apropos-variable RET isearch.*\(hook\|function\) RET
führt Sie zuisearch-update-post-hook
, was scheint, was Sie suchen. Damit ...quelle
(when (> (length isearch-string) 0)...
in Ihrem Code durch ersetze(when (> 1 0)...
, scheint es zu funktionieren. Aber ich verstehe nicht, woher das Problem kommt.