Quiero usar regiones para el plegado de código en Eclipse ; ¿Cómo se puede hacer eso en Java?
Un ejemplo de uso en C # :
#region name
//code
#endregion
//region [Description]
y al final con//endregion
Quiero usar regiones para el plegado de código en Eclipse ; ¿Cómo se puede hacer eso en Java?
Un ejemplo de uso en C # :
#region name
//code
#endregion
//region [Description]
y al final con//endregion
Respuestas:
No existe tal equivalente estándar . Algunos IDEs (Intellij, por ejemplo, o Eclipse) pueden plegarse dependiendo de los tipos de código involucrados (constructores, importaciones, etc.), pero no hay nada parecido #region
.
Jet Brains IDEA tiene esta característica. Puede usar la tecla de acceso rápido surround para eso (ctrl + alt + T). Es solo la función IDEA.
Las regiones allí se ven así:
//region Description
Some code
//endregion
Con Android Studio, intente esto:
//region VARIABLES
private String _sMyVar1;
private String _sMyVar2;
//endregion
Cuidado: sin línea en blanco después de // región ...
Y obtendrás:
No hay equivalente en el idioma ... Basado en IDEs ...
Por ejemplo en netbeans:
NetBeans / Creator admite esta sintaxis:
// <editor-fold defaultstate="collapsed" desc="Your Fold Comment">
...
// </editor-fold>
Para Eclipse IDE, el complemento Coffee-Bytes puede hacerlo, el enlace de descarga está aquí .
EDITAR:
La función de plegado de código personalizado se puede agregar a eclipse utilizando el complemento de plegado de código de CoffeeScript.
Esto está probado para funcionar con eclipse Luna y Juno. Aquí están los pasos.
Descargue el complemento desde aquí
Extraer el contenido del archivo
Navegar Window >Preferences >Java >Editor >Folding >Select folding to use: Coffee Bytes Java >General tab >Tick checkboxes in front of User Defined Fold
Cree una nueva región como se muestra:
Reinicia el Eclipse.
Pruebe si el plegado funciona con comentarios prefijados con identificadores iniciales y finales especificados
Puede descargar el archivo y encontrar pasos en este Blog también.
Esta es más una función IDE que una función de idioma. Netbeans le permite definir sus propias definiciones plegables utilizando la siguiente definición:
// <editor-fold defaultstate="collapsed" desc="user-description">
...any code...
// </editor-fold>
Como se señaló en el artículo, esto también puede ser respaldado por otros editores, pero no hay garantías.
la forma más rápida en
Android Studio
(oIntelliJ IDEA
)
highlight the code
quieres rodearloctrl
+alt
+t
c
==> luego ingrese la descripciónAndroidStudio
región
Crear región
Primero , busque (y defina un atajo si es necesario) para el Surround With
menú
Luego , seleccione el código, presione Ctrl+Alt+Semicolon
-> elijaregion..endregion...
Ir a la región
Primero, encuentre el Custom Folding
atajo.
Segundo, desde cualquier parte de su código, presioneCtrl+Alt+Period('>' on keyboard)
Al contrario de lo que la mayoría está publicando, esto NO es algo IDE. Es una cosa del lenguaje. La # región es una declaración de C #.
Venía de C # a Java y tenía el mismo problema y la mejor y exacta alternativa para la región es algo como a continuación (trabajando en Android Studio, no sé sobre intelliJ):
//region [Description]
int a;
int b;
int c;
//endregion
el atajo es como a continuación:
1- selecciona el código
2- presiona ctrl
+alt
+t
3- presiona c
y escribe tu descripción
La mejor manera
//region DESCRIPTION_REGION
int x = 22;
// Comments
String s = "SomeString";
//endregion;
Consejo: Pon ";" al final de la "región final"
Si alguien está interesado, en Eclipse puede contraer todos sus métodos, etc. de una sola vez, simplemente haga clic derecho cuando normalmente inserte un punto de ruptura, haga clic en 'Plegar'> 'Contraer todo'. Sabe que no es una respuesta a la pregunta, sino que simplemente proporciona una alternativa al plegado rápido de código.
#region
// code
#endregion
Realmente solo obtienes algún beneficio en el IDE. Con Java, no hay un estándar establecido en IDE, por lo que realmente no hay un estándar paralelo a #region
.
region
, entonces podemos estar seguros de que los IDE de Java lo admitirán, ¿no?
Aquí hay un ejemplo:
//region regionName
//code
//endregion
100% funciona en Android studio
En realidad, johann, #
indica que es una directiva de preprocesador, lo que básicamente significa que le dice al IDE qué hacer.
En el caso de usar #region
y#endregion
en su código, NO hace ninguna diferencia en el código final si está allí o no. ¿Realmente puedes llamarlo un elemento del lenguaje si usarlo no cambia nada?
Aparte de eso, java no tiene directivas de preprocesador, lo que significa que la opción de plegado de código se define per-ide, en netbeans, por ejemplo, con una declaración // <code-fold>
En Mac y Android Studio, siga esta secuencia:
<editor-fold>
También puede seleccionar otras opciones:
En Eclipse puede contraer los corchetes que envuelven el bloque de región variable. Lo más cercano es hacer algo como esto:
public class counter_class
{
{ // Region
int variable = 0;
}
}
Simplemente instale y active el complemento Coffee-Bytes (Eclipse)
Hay alguna opción para lograr lo mismo, siga los puntos a continuación.
1) Explorador de macros abierto:
2) Crear nueva macro:
3) Nómbralo "OutlineRegions" (o lo que quieras)
4) Haga clic derecho en "OutlineRegions" (que se muestra en el Explorador de macros), seleccione la opción "Editar" y pegue el siguiente código VB:
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) Guarde la macro y cierre el editor.
6) Ahora asignemos acceso directo a la macro. Vaya a Herramientas-> Opciones-> Entorno-> Teclado y busque su macro en el cuadro de texto "mostrar comandos que contienen" (Escriba: Macro en el cuadro de texto, le sugerirá el nombre de la macro, elija el suyo).
7) ahora en el cuadro de texto debajo de "Presionar teclas de acceso directo" puede ingresar el acceso directo deseado. Yo uso Ctrl + M + N.
Utilizar:
return
{
//Properties
//#region
Name:null,
Address:null
//#endregion
}
8) Presione la tecla de acceso directo guardada
Ver abajo el resultado:
This code seems to be for Visual Basic.NET
lo que sugeriría que es el IDE Visual Studio
.
#region
y#endregion