java c# eclipse folding
enlace de descarga está aquí

c# region in java



Java equivalente a#region en c# (20)

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


La forma más rápida en Android Studio (o IntelliJ IDEA )

  1. highlight the code que quieras para rodearlo
  2. presiona ctrl + alt + t
  3. presione c ==> luego ingrese la descripción
  4. disfrutar

Al contrario de lo que la mayoría está publicando, esto NO es una cosa IDE. Es una cosa del lenguaje. El #region es una declaración de C #.


Con Android Studio, prueba esto:

//region VARIABLES private String _sMyVar1; private String _sMyVar2; //endregion

Cuidado: no hay línea en blanco después de // región ...

Y obtendrás:


En Eclipse puede colapsar los paréntesis 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; } }


En Mac y Android Studio siga esta secuencia:

  1. Resalta el código fuente para plegar
  2. Presiona Alt + Comando + t
  3. Seleccione <editor-fold>

También puedes seleccionar otras opciones:


En realidad, johann, el # 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, ya sea que esté allí o no. ¿Realmente puedes llamarlo un elemento del lenguaje si su uso 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 por ideología, en netbeans, por ejemplo, con una sentencia // <code-fold>


Esto es más una característica IDE que una característica de idioma. Netbeans le permite definir sus propias definiciones de plegado utilizando la siguiente definición:

// <editor-fold defaultstate="collapsed" desc="user-description"> ...any code... // </editor-fold>

Como se señala en el artículo, esto también puede ser respaldado por otros editores, pero no hay garantías.


Hay alguna opción para lograr lo mismo, siga los puntos a continuación.

1) Abrir el explorador de macros:

2) Crear nueva macro:

3) Nómbrelo como "OutlineRegions" (o lo que quieras)

4) Haga clic derecho en "OutlineRegions" (mostrando en el Explorador de macros) seleccione la opción "Editar" y pegue el siguiente código de 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) Guardar la macro y cerrar el editor.

6) Ahora vamos a asignar un atajo a la macro. Vaya a Herramientas-> Opciones-> Entorno-> Teclado y busque su macro en el cuadro de texto "mostrar comandos que contiene" (Escriba: Macro en el cuadro de texto, sugerirá el nombre de las macros, elija el suyo).

7) ahora en el cuadro de texto debajo de "Presione las 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) Presiona la tecla de acceso directo guardada

Vea a continuación el resultado:


Jet Brains IDEA tiene esta característica. Puede usar el teclado de teclas de acceso rápido para eso (ctrl + alt + T). Es solo una característica de IDEA.

Las regiones allí se ven así:

//region Description Some code //endregion


La función de plegado de código personalizado se puede agregar al eclipse mediante el complemento de plegado de código de CoffeeScript.

Esto está probado para trabajar con eclipse Luna y Juno. Aqui estan los pasos

  1. Descarga el plugin desde here

  2. Extraer los contenidos del archivo.

  3. Copie y pegue el contenido del complemento y la carpeta de características en la misma carpeta con nombre dentro del directorio de instalación de eclipse
  4. Reinicia el eclipse
  5. Desplácese a Window >Preferences >Java >Editor >Folding >Select folding to use: Coffee Bytes Java >General tab >Tick checkboxes in front of User Defined Fold

  6. Crear nueva región como se muestra:

  7. Probar si el plegado funciona con comentarios prefijados con identificadores de inicio y fin especificados

Puedes descargar el archivo y encontrar los pasos en este Blog también.


La mejor manera

//region DESCRIPTION_REGION int x = 22; // Comments String s = "SomeString"; //endregion;

Consejo: Poner ";" al final de la "endregion"


No hay equivalente en el idioma ... Basado en IDEs ...

Por ejemplo en netbeans:

NetBeans / Creator soporta esta sintaxis:

// <editor-fold defaultstate="collapsed" desc="Your Fold Comment"> ... // </editor-fold>

http://forums.java.net/jive/thread.jspa?threadID=1311


No hay tal equivalente estándar . Algunos IDEs, por ejemplo, Intellij o Eclipse, pueden plegarse dependiendo de los tipos de código involucrados (constructores, importaciones, etc.), pero no hay nada como #region .



Por lo general necesito esto para el código comentado, así que uso corchetes al principio y al final de eso.

{ // Code // Code // Code // Code }

Podría usarse para fragmentos de código, pero puede crear problemas en algunos códigos porque cambia el alcance de la variable.


Región de AndroidStudio
Crear región

Primero , busque (y defina el atajo si es necesario) para el menú Surround With

Luego , seleccione el código, presione Ctrl+Alt+Semicolon -> elegir region..endregion...

Ir a la region

Primero, encuentra atajo Custom Folding
Segundo, desde cualquier lugar en su código, presione Ctrl+Alt+Period(''>'' on keyboard)


Si alguien está interesado, en Eclipse puede colapsar todos sus métodos, etc. de una sola vez, simplemente haga clic derecho cuando normalmente inserte un punto de ruptura, haga clic en ''Plegado''> ''Contraer todo''. Sabe que no es una respuesta a la pregunta, sino que proporciona una alternativa al plegado rápido de código.


Simplemente intall y habilitar el complemento Coffee-Bytes (Eclipse)


Yo venía de C # a Java y tenía el mismo problema y la alternativa mejor y exacta para la región es algo así como a continuación (trabajando en Android Studio, no sé acerca de 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


#region // code #endregion

Realmente solo te consigue 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 .