46 votes

Comment puis-je configurer le nettoyage du code de ReSharper lors de l'enregistrement ?

J'aimerais configurer Visual Studio/ReSharper pour qu'il exécute le "nettoyage du code" chaque fois que j'enregistre un fichier.

Un bonus serait de configurer ceci uniquement pour les fichiers C#, car je trouve parfois que le nettoyage sur les fichiers ASP.NET ne fonctionne pas sans introduire des erreurs.

1voto

VitalyB Points 2318

Si vous êtes sur VS2012, et que vous ne pouvez pas utiliser la solution des macros, vous pouvez utiliser AutoHotKey (ou similaire) pour l'automatiser, au lieu d'utiliser des macros :

  1. Dans Visual Studio :
    1. Assignez une touche à la commande ReSharper_SilentCleanupCode, par ex : CONTRL+SHIFT+C
    2. Changez la touche de sauvegarde de CONTROL+S à quelque chose d'autre, par ex : CONTRL+SHIFT+S
  2. Dans AutoHotKey, créez un snippet qui ressemble à quelque chose comme ça :

    ^s::
        Send, ^+c
        Sleep, 300
        Send, ^+s
    return

0voto

Marcel Dutt Points 101

Peut-être que cela aidera quelqu'un d'autre à l'avenir. J'ai vraiment aimé l'idée de la macro et je l'ai adoptée. Mais ce n'était pas suffisant pour moi. Je voulais sauvegarder tous les fichiers ouverts non sauvegardés en une seule fois tout en profitant de la fonction de nettoyage de ReSharper. J'ai donc créé cette macro :

Public Module SaveUtils
    Public Sub CleanAndSave()
        DTE.ExecuteCommand("ReSharper_SilentCleanupCode")
        DTE.ActiveDocument.Save()
    End Sub

    Public Sub CleanAndSaveAll()
        For i = 1 To DTE.Documents.Count
            Dim document = DTE.Documents.Item(i)
            If (Not document.Saved) Then
                document.Activate()
                CleanAndSave()
            End If
        Next i
    End Sub
End Module

0voto

DNKpp Points 219

Aujourd'hui, j'ai demandé cette fonctionnalité sur le forum officiel de resharper++ et j'ai reçu la réponse qu'elle est déjà implémentée dans la version 2020.2 EAP (early access program). sujet

Vous pouvez trouver ici le numéro correspondant : cliquez sur moi

Cela signifie que cette fonctionnalité sera bientôt disponible pour tous. Sinon, passez simplement à la version EAP.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X