@@ -57,19 +57,34 @@ export function activate(context: vscode.ExtensionContext): void {
57
57
[ '(' , ')' ] ,
58
58
] ,
59
59
60
- __electricCharacterSupport : {
61
- docComment : { scope : 'comment.documentation' , open : '/**' , lineStart : ' * ' , close : ' */' }
62
- } ,
63
-
64
- __characterPairSupport : {
65
- autoClosingPairs : [
66
- { open : '{' , close : '}' } ,
67
- { open : '[' , close : ']' } ,
68
- { open : '(' , close : ')' } ,
69
- { open : '"' , close : '"' , notIn : [ 'string' ] } ,
70
- { open : '\'' , close : '\'' , notIn : [ 'string' , 'comment' ] }
71
- ]
72
- }
60
+ onEnterRules : [
61
+ {
62
+ // e.g. /** | */
63
+ beforeText : / ^ \s * \/ \* \* (? ! \/ ) ( [ ^ \* ] | \* (? ! \/ ) ) * $ / ,
64
+ afterText : / ^ \s * \* \/ $ / ,
65
+ action : { indentAction : IndentAction . IndentOutdent , appendText : ' * ' }
66
+ } ,
67
+ {
68
+ // e.g. /** ...|
69
+ beforeText : / ^ \s * \/ \* \* (? ! \/ ) ( [ ^ \* ] | \* (? ! \/ ) ) * $ / ,
70
+ action : { indentAction : IndentAction . None , appendText : ' * ' }
71
+ } ,
72
+ {
73
+ // e.g. * ...|
74
+ beforeText : / ^ ( \t | ( \ \ ) ) * \ \* ( \ ( [ ^ \* ] | \* (? ! \/ ) ) * ) ? $ / ,
75
+ action : { indentAction : IndentAction . None , appendText : '* ' }
76
+ } ,
77
+ {
78
+ // e.g. */|
79
+ beforeText : / ^ ( \t | ( \ \ ) ) * \ \* \/ \s * $ / ,
80
+ action : { indentAction : IndentAction . None , removeText : 1 }
81
+ } ,
82
+ {
83
+ // e.g. *-----*/|
84
+ beforeText : / ^ ( \t | ( \ \ ) ) * \ \* [ ^ / ] * \* \/ \s * $ / ,
85
+ action : { indentAction : IndentAction . None , removeText : 1 }
86
+ }
87
+ ]
73
88
} ) ;
74
89
75
90
// The language server is only available on Windows
0 commit comments