J'ai ENFIN trouver une solution au fait que l'abandon de la recherche se replace au début du fichier sans l'écriture d'un énorme fonction...
Vous ne croiriez pas combien de temps il m'a fallu pour arriver à ce. Il suffit d'ajouter une invite de s'envelopper: si l'utilisateur appuie q
encore une fois, ne pas envelopper. Donc, fondamentalement, quittez la recherche en appuyant sur qq
au lieu de q
! (Et si vous ne voulez enchaîner, il suffit de taper y
.)
:,$s/BEFORE/AFTER/gce|echo 'Continue at beginning of file? (y/q)'|if getchar()!=113|1,''-&&|en
En fait, j'ai mappé à un raccourci clavier. Ainsi, par exemple, si vous souhaitez rechercher et remplacer chaque mot sous le curseur, à partir de la position actuelle, avec q*
:
exe 'nno q* :,$s/\<<c-r>=expand("<cword>")<cr>\>//gce\|echo "Continue at beginning of file? (y/q)"\|if getchar()==121\|1,''''-&&\|en'.repeat('<left>',77)