Je veux utiliser des régions pour le pliage de code dans Eclipse ; comment cela peut-il être fait en Java?
Un exemple d'utilisation en C # :
#region name
//code
#endregion
//region [Description]
et terminer avec//endregion
Je veux utiliser des régions pour le pliage de code dans Eclipse ; comment cela peut-il être fait en Java?
Un exemple d'utilisation en C # :
#region name
//code
#endregion
//region [Description]
et terminer avec//endregion
Réponses:
Il n'y a pas d' équivalent standard . Certains IDE - Intellij, par exemple, ou Eclipse - peuvent se plier en fonction des types de code impliqués (constructeurs, importations, etc.), mais il n'y a rien de tel #region
.
Jet Brains IDEA a cette fonctionnalité. Vous pouvez utiliser le raccourci clavier surround pour cela (ctrl + alt + T). C'est juste une fonctionnalité IDEA.
Les régions ressemblent à ceci:
//region Description
Some code
//endregion
Avec Android Studio, essayez ceci:
//region VARIABLES
private String _sMyVar1;
private String _sMyVar2;
//endregion
Attention: pas de ligne vide après // région ...
Et vous obtiendrez:
Pas d'équivalent dans la langue ... Basé sur les IDE ...
Par exemple dans les netbeans:
NetBeans / Creator prend en charge cette syntaxe:
// <editor-fold defaultstate="collapsed" desc="Your Fold Comment">
...
// </editor-fold>
Pour Eclipse IDE, le plugin Coffee-Bytes peut le faire, le lien de téléchargement est ici .
ÉDITER:
Les dernières informations sur les octets de café sont ici .
La fonction de pliage de code personnalisé peut être ajoutée à éclipse à l'aide du plug-in de pliage de code CoffeeScript.
Ceci est testé pour fonctionner avec eclipse Luna et Juno. Voici les étapes
Téléchargez le plugin ici
Extraire le contenu de l'archive
Naviguer Window >Preferences >Java >Editor >Folding >Select folding to use: Coffee Bytes Java >General tab >Tick checkboxes in front of User Defined Fold
Créez une nouvelle région comme indiqué:
Redémarrez Eclipse.
Essayez si le pliage fonctionne avec des commentaires préfixés avec des identificateurs de début et de fin spécifiés
Vous pouvez également télécharger des archives et trouver des étapes sur ce blog .
Il s'agit plus d'une fonction IDE que d'une fonction de langue. Netbeans vous permet de définir vos propres définitions de pliage en utilisant la définition suivante:
// <editor-fold defaultstate="collapsed" desc="user-description">
...any code...
// </editor-fold>
Comme indiqué dans l'article, cela peut également être pris en charge par d'autres éditeurs, mais il n'y a aucune garantie.
le moyen le plus rapide
Android Studio
(ouIntelliJ IDEA
)
highlight the code
tu veux l'entourerctrl
+ alt
+t
c
==> puis entrez la descriptionAndroidStudio
région
Créer une région
Tout d'abord , trouvez (et définissez un raccourci si besoin) pour le Surround With
menu
Ensuite , sélectionnez le code, appuyez sur Ctrl+Alt+Semicolon
-> choisissezregion..endregion...
Aller à la région
Tout d'abord, trouvez Custom Folding
un raccourci
Deuxièmement, de n'importe où dans votre code, appuyez surCtrl+Alt+Period('>' on keyboard)
Contrairement à ce que la plupart publient, ce n'est PAS une chose IDE. C'est une affaire de langage. La #region est une instruction C #.
Je venais de C # vers java et j'ai eu le même problème et l'alternative la meilleure et exacte pour la région est quelque chose comme ci-dessous (travaillant dans Android Studio, je ne sais pas sur intelliJ):
//region [Description]
int a;
int b;
int c;
//endregion
le raccourci est comme ci-dessous:
1- sélectionnez le code
2- appuyez sur ctrl
+ alt
+t
3- Appuyez c
et écrivez votre description
Le meilleur moyen
//region DESCRIPTION_REGION
int x = 22;
// Comments
String s = "SomeString";
//endregion;
Astuce: mettez ";" à la fin de la "endregion"
Si quelqu'un est intéressé, dans Eclipse, vous pouvez réduire toutes vos méthodes, etc. en une seule fois, faites un clic droit lorsque vous insérez normalement un point d'arrêt, cliquez sur 'Pliage'> 'Tout replier'. Il sait que ce n'est pas une réponse à la question, mais simplement une alternative au pliage de code rapide.
#region
// code
#endregion
Vous n'obtenez vraiment aucun avantage dans l'IDE. Avec Java, il n'y a pas de norme définie dans l'IDE, donc il n'y a vraiment pas de norme parallèle à #region
.
region
, alors nous pouvons être sûrs que les IDE java prendront en charge, n'est-ce pas?
En fait, johann, le #
indique qu'il s'agit d'une directive de préprocesseur, ce qui signifie essentiellement qu'il indique à l'EDI quoi faire.
Dans le cas de l'utilisation #region
et #endregion
de votre code, cela ne fait AUCUNE différence dans le code final, qu'il soit là ou non. Pouvez-vous vraiment l'appeler un élément de langage si son utilisation ne change rien?
En dehors de cela, java n'a pas de directives de préprocesseur, ce qui signifie que l'option de pliage de code est définie sur une base par idée, dans les netbeans par exemple avec une instruction // <code-fold>
Sur Mac et Android Studio, suivez cette séquence:
<editor-fold>
Vous pouvez également sélectionner d'autres options:
Dans Eclipse, vous pouvez réduire le bloc de région variable enveloppant les crochets. Le plus proche est de faire quelque chose comme ça:
public class counter_class
{
{ // Region
int variable = 0;
}
}
Il suffit d'installer et d'activer le plug-in Coffee-Bytes (Eclipse)
Il existe une option pour obtenir le même résultat, suivez les points ci-dessous.
1) Ouvrez l'explorateur de macros:
2) Créez une nouvelle macro:
3) Nommez-le "OutlineRegions" (ou tout ce que vous voulez)
4) Faites un clic droit sur les "OutlineRegions" (affichage sur Macro Explorer) sélectionnez l'option "Modifier" et collez-y le code VB suivant:
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports EnvDTE90a
Imports EnvDTE100
Imports System.Diagnostics
Imports System.Collections
Public Module OutlineRegions
Sub OutlineRegions()
Dim selection As EnvDTE.TextSelection = DTE.ActiveDocument.Selection
Const REGION_START As String = "//#region"
Const REGION_END As String = "//#endregion"
selection.SelectAll()
Dim text As String = selection.Text
selection.StartOfDocument(True)
Dim startIndex As Integer
Dim endIndex As Integer
Dim lastIndex As Integer = 0
Dim startRegions As Stack = New Stack()
Do
startIndex = text.IndexOf(REGION_START, lastIndex)
endIndex = text.IndexOf(REGION_END, lastIndex)
If startIndex = -1 AndAlso endIndex = -1 Then
Exit Do
End If
If startIndex <> -1 AndAlso startIndex < endIndex Then
startRegions.Push(startIndex)
lastIndex = startIndex + 1
Else
' Outline region ...
selection.MoveToLineAndOffset(CalcLineNumber(text, CInt(startRegions.Pop())), 1)
selection.MoveToLineAndOffset(CalcLineNumber(text, endIndex) + 1, 1, True)
selection.OutlineSection()
lastIndex = endIndex + 1
End If
Loop
selection.StartOfDocument()
End Sub
Private Function CalcLineNumber(ByVal text As String, ByVal index As Integer)
Dim lineNumber As Integer = 1
Dim i As Integer = 0
While i < index
If text.Chars(i) = vbCr Then
lineNumber += 1
i += 1
End If
i += 1
End While
Return lineNumber
End Function
End Module
5) Enregistrez la macro et fermez l'éditeur.
6) Attribuons maintenant un raccourci à la macro. Allez dans Outils-> Options-> Environnement-> Clavier et recherchez votre macro dans la zone de texte "afficher les commandes contenant" (Type: Macro dans la zone de texte, il suggérera le nom des macros, choisissez le vôtre.)
7) maintenant dans la zone de texte sous "Appuyez sur les touches de raccourci", vous pouvez entrer le raccourci souhaité. J'utilise Ctrl + M + N.
Utilisation:
return
{
//Properties
//#region
Name:null,
Address:null
//#endregion
}
8) Appuyez sur la touche de raccourci enregistrée
Voir résultat ci-dessous:
This code seems to be for Visual Basic.NET
ce qui suggère que l'EDI l'est Visual Studio
.
#region
et#endregion