Я хочу використовувати регіони для складання коду в Eclipse ; як це можна зробити на Java?
Приклад використання в C # :
#region name
//code
#endregion
//region [Description]
кінця і //endregion
Я хочу використовувати регіони для складання коду в Eclipse ; як це можна зробити на Java?
Приклад використання в C # :
#region name
//code
#endregion
//region [Description]
кінця і //endregion
Відповіді:
Немає такого стандартного еквівалента. Деякі IDE - наприклад, Intellij або Eclipse - можуть складатися залежно від типів коду (конструктори, імпорт тощо), але нічого подібного немає #region
.
Jet Brains IDEA має цю особливість. Для цього можна використовувати об'єм гарячої клавіші (ctrl + alt + T). Це лише функція IDEA.
Регіони там виглядають так:
//region Description
Some code
//endregion
За допомогою Android Studio спробуйте це:
//region VARIABLES
private String _sMyVar1;
private String _sMyVar2;
//endregion
Обережно: немає порожнього рядка після // регіону ...
І ви отримаєте:
У мові немає еквіваленту ... На основі IDE ...
Наприклад, в Netbeans:
NetBeans / Creator підтримує цей синтаксис:
// <editor-fold defaultstate="collapsed" desc="Your Fold Comment">
...
// </editor-fold>
Для Eclipse IDE плагін Coffee-Bytes може це зробити, посилання для завантаження тут .
Редагувати:
Спеціальна функція складання коду може бути додана до затемнення за допомогою модуля складання коду CoffeeScript.
Це перевірено для роботи із затемненням Луни та Юнони. Ось етапи
Завантажте плагін звідси
Витягніть вміст архіву
Навігація Window >Preferences >Java >Editor >Folding >Select folding to use: Coffee Bytes Java >General tab >Tick checkboxes in front of User Defined Fold
Створіть новий регіон, як показано:
Перезапустіть Eclipse.
Перевірте, чи працює складання з коментарями з попередньою позначкою початкових та кінцевих ідентифікаторів
Ви також можете завантажити архів і знайти кроки в цьому блозі .
Це швидше функція IDE, ніж мовна. Netbeans дозволяє визначити власні визначення складання, використовуючи таке визначення:
// <editor-fold defaultstate="collapsed" desc="user-description">
...any code...
// </editor-fold>
Як зазначається у статті, це може бути підтримано і іншими редакторами, але гарантій немає.
найшвидший спосіб
Android Studio
(абоIntelliJ IDEA
)
highlight the code
ви хочете оточити йогоctrl
+ alt
+t
c
==>, а потім введіть описAndroidStudio
регіон
Створити регіон
Спочатку знайдіть (і визначте, якщо це потрібно, ярлик) для Surround With
меню
Потім виберіть код і натисніть Ctrl+Alt+Semicolon
-> вибратиregion..endregion...
Перейти до регіону
По-перше, знайдіть Custom Folding
ярлик.
По-друге, натисніть з будь-якої точки кодуCtrl+Alt+Period('>' on keyboard)
Всупереч тому, що більшість публікує, це НЕ ІДЕ. Це мова мова. #Region - це твердження C #.
Я їхав із C # в java і мав ту саму проблему, і найкраща і точна альтернатива для регіону - це щось на кшталт нижче (працюю в Android Studio, не знаю про intelliJ):
//region [Description]
int a;
int b;
int c;
//endregion
ярлик, як показано нижче:
1- виберіть код
2- натисніть ctrl
+ alt
+t
3- натисніть c
і напишіть свій опис
Найкращий спосіб
//region DESCRIPTION_REGION
int x = 22;
// Comments
String s = "SomeString";
//endregion;
Порада: Покладіть ";" наприкінці "кінцевого регіону"
Якщо хтось зацікавлений, у програмі Eclipse ви зможете за один раз згорнути всі ваші методи тощо. Просто клацніть правою кнопкою миші, коли ви зазвичай вставляєте точку розриву, натисніть "Розгортання"> "Згорнути все". Він знає, що це не відповідь на питання, а просто надання альтернативи швидкому складенню коду.
#region
// code
#endregion
Дійсно отримує тільки будь-яку вигоду в IDE. У Java немає встановленого стандарту в IDE, тому насправді немає стандартної паралелі #region
.
region
, то ми можемо бути впевнені , що Java IDE, буде підтримувати його, чи не так?
Насправді Джоанн, the #
вказує те, що це препроцесорна директива, що в основному означає, що вона говорить IDE, що робити.
У разі використання #region
і#endregion
у вашому коді, він не має різниці у кінцевому коді, є він чи ні. Ви дійсно можете назвати його мовним елементом, якщо використання його нічого не змінює?
Крім того, java не має директив препроцесора, а це означає, що опція складання коду визначається на основі ідеї, наприклад, в netbeans, з заявою // <code-fold>
На Mac і Android Studio дотримуйтесь цієї послідовності:
<editor-fold>
Також ви можете вибрати інші варіанти:
У Eclipse ви можете згортати дужки, що обгортають блок змінної області. Найближчим є зробити щось подібне:
public class counter_class
{
{ // Region
int variable = 0;
}
}
Просто вставте та увімкніть плагін Coffee-Bytes (Eclipse)
Існує деякий варіант досягти того ж. Дотримуйтесь наведених нижче пунктів.
1) Відкрийте Провідник макросів:
2) Створіть новий макрос:
3) Назвіть його "OutlineRegions" (або що завгодно)
4) Клацніть правою кнопкою миші на "OutlineRegions" (відображається в Macro Explorer), виберіть опцію "Редагувати" і вставте в неї наступний код 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) Збережіть макрос і закрийте редактор.
6) Тепер призначимо ярлик макросу. Перейдіть до Інструменти-> Параметри-> Навколишнє середовище-> Клавіатура та знайдіть свій макрос у текстовому полі "показати команди, що містять" (Введіть: Макрос у текстове поле, воно запропонує ім'я макросів, виберіть своє.)
7) тепер у текстовому полі під "Натисніть клавіші швидкого доступу" ви можете ввести потрібний ярлик. Я використовую Ctrl + M + N.
Використання:
return
{
//Properties
//#region
Name:null,
Address:null
//#endregion
}
8) Натисніть збережену клавішу швидкого доступу
Дивіться нижче результат:
This code seems to be for Visual Basic.NET
який би припустив, що IDE є Visual Studio
.
#region
і#endregion