-
Notifications
You must be signed in to change notification settings - Fork 12.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for custom outlining regions #17954
Changes from all commits
9726ba1
f91c23b
0b3ec24
0ef5498
4971e31
562d988
fb462c9
442bc56
509d347
c3f2648
7781245
3dfeb2d
484bd20
e5c43cd
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
/// <reference path="fourslash.ts"/> | ||
|
||
////// region without label | ||
////[|// #region | ||
//// | ||
////// #endregion|] | ||
//// | ||
////// region without label with trailing spaces | ||
////[|// #region | ||
//// | ||
////// #endregion|] | ||
//// | ||
////// region with label | ||
////[|// #region label1 | ||
//// | ||
////// #endregion|] | ||
//// | ||
////// region with extra whitespace in all valid locations | ||
//// [|// #region label2 label3 | ||
//// | ||
//// // #endregion|] | ||
//// | ||
////// No space before directive | ||
////[|//#region label4 | ||
//// | ||
//////#endregion|] | ||
//// | ||
////// Nested regions | ||
////[|// #region outer | ||
//// | ||
////[|// #region inner | ||
//// | ||
////// #endregion inner|] | ||
//// | ||
////// #endregion outer|] | ||
//// | ||
////// region delimiters not valid when there is preceding text on line | ||
//// test // #region invalid1 | ||
//// | ||
////test // #endregion | ||
//// | ||
////// region delimiters not valid when in multiline comment | ||
/////* | ||
////// #region invalid2 | ||
////*/ | ||
//// | ||
/////* | ||
////// #endregion | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It would be good to have tests with unbalanced start/end markers too. This is an area where a regression could easily slip through and cause exceptions. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Added unbalanced tests. |
||
////*/ | ||
|
||
verify.outliningSpansInCurrentFile(test.ranges()); |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
/// <reference path="fourslash.ts"/> | ||
|
||
////// bottom-heavy region balance | ||
////[|// #region matched | ||
//// | ||
////// #endregion matched|] | ||
//// | ||
////// #endregion unmatched | ||
|
||
verify.outliningSpansInCurrentFile(test.ranges()); |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
/// <reference path="fourslash.ts"/> | ||
|
||
////// top-heavy region balance | ||
////// #region unmatched | ||
//// | ||
////[|// #region matched | ||
//// | ||
////// #endregion matched|] | ||
|
||
debugger; | ||
verify.outliningSpansInCurrentFile(test.ranges()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there any way to test the name that appears for the region? (And add some tests for interesting region names, e.g. includes spaces or tabs).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As far as I can tell, fourslash doesn't currently gather that information.
I can try to add the functionality if you would like me to though.