Il y a plusieurs fois dans ma vie professionnelle quotidienne que je dois opérer sur une fonction spécifique, des choses comme la mise en évidence ou la recherche d'une variable, mais je n'ai jamais réussi à limiter la portée des modifications / recherche.
Existe-t-il un moyen dans vim de dire de manière sélective, de trouver toutes les références à l' $color
intérieur de ces ensembles d'accolades, ou ce pli, etc. Si possible, il serait idéal que ce soit relativement générique, afin qu'il puisse être appliqué à l'édition / remplacement de texte.
Par exemple:
$color = "#fff";
function PickColor () {
$color = "#bbb";
$newColors = ["#000", "#fbf", $color];
foreach ($newColors as $c) {
if ($c == "#fff") {
break;
}
}
}
$differentColor = $color;
Ce code est un exemple relativement mauvais, cependant, si je devais remplacer toutes les instances de $ color, comment procéder dans le contexte de la fonction PickColor. Comme autre exemple, en utilisant #
et *
Vous pouvez passer à l'instance suivante de cet objet texte, comment limiteriez-vous la portée de la recherche à cette fonction (en gros, la recherche) opposée au fichier entier qui pourrait s'étendre sur des milliers de lignes et perdre votre place, ou remplacer incorrectement quelque chose dans une autre fonction que vous ne devriez pas avoir?