Il y a une question sur SO à propos de la division des mecs en utilisant magit, et les deux solutions proposées sont soit de mettre en scène la région (marquer une région, frapper la scène), soit de réduire / agrandir tous les mecs en utilisant +
& -
. Ce n'est pas ce que je recherche.
Dans le tampon d'état de magit, je veux diviser un morceau en deux morceaux, au point, ou au moins aux lignes autour du point.
Tourner cela (excusez mon mauvais formatage diff)
@@ blah blah blah
- foo
+ bar
+ baz
+
Dans
@@ blah blah
- foo
+ bar
@ blah blah
+ baz
Lorsque le point est sur la barre.
Motivations:
baz
étant une déclaration de débogage, je voudrais donc la supprimer de la validation defoo
&bar
sans m'en débarrasser.bar
etbaz
n'étant que partiellement liés, ce qui signifie que leurs modifications ne devraient pas être dans le même commit.bar
est grand etbaz
petit, ce qui facilite beaucoup la division du morceau plutôt que la sélectionbar
Semblable au dernier point, disons qu'un commit de 20 lignes contient une seule ligne au milieu qui ne doit pas être mise en scène. Il serait plus facile de diviser et de mettre en scène les deux mecs supérieurs et inférieurs en ignorant celui du milieu que d'utiliser la région.
Ce qui précède peut survenir parfois lorsque la présentation diff sépare l'avant et l'après de quelque chose qui a été modifié et a quelque chose de inutile au milieu. par exemple
@@ line
- old_foo
+ random stuff
+ new foo
diff-split-hunk
qui fait exactement cela. IOW votre demande est pour un moyen d'utiliser diff-split-hunk
(ou quelque chose d'équivalent) à partir du tampon d'état magit.