1
1
// src/extension.ts
2
- import * as vscode from 'vscode' ;
2
+ import * as vscode from 'vscode' ;
3
3
4
4
import FortranLintingProvider from './features/linter-provider' ;
5
5
import FortranHoverProvider from "./features/hover-provider" ;
6
6
import { FortranCompletionProvider } from "./features/completion-provider" ;
7
+ import { FortranDocumentSymbolProvider } from "./features/document-symbol-provider" ;
7
8
8
9
export function activate ( context : vscode . ExtensionContext ) {
9
-
10
- let hoverProvider = new FortranHoverProvider ( ) ;
11
- let completionProvider = new FortranCompletionProvider ( ) ;
12
- if ( vscode . workspace . getConfiguration ( "fortran" ) . get ( "linterEnabled" , true ) ) {
13
-
14
- let linter = new FortranLintingProvider ( ) ;
15
- linter . activate ( context . subscriptions ) ;
16
- vscode . languages . registerCodeActionsProvider ( 'fortran90' , linter ) ;
17
- }
18
-
19
- vscode . languages . registerCompletionItemProvider ( "fortran90" , completionProvider )
20
- vscode . languages . registerHoverProvider ( 'fortran90' , hoverProvider ) ;
21
-
10
+
11
+ let hoverProvider = new FortranHoverProvider ( ) ;
12
+ let completionProvider = new FortranCompletionProvider ( ) ;
13
+ let symbolProvider = new FortranDocumentSymbolProvider ( ) ;
14
+
15
+ if ( vscode . workspace . getConfiguration ( "fortran" ) . get ( "linterEnabled" , true ) ) {
16
+
17
+ let linter = new FortranLintingProvider ( ) ;
18
+ linter . activate ( context . subscriptions ) ;
19
+ vscode . languages . registerCodeActionsProvider ( 'fortran90' , linter ) ;
20
+ }
21
+
22
+ vscode . languages . registerCompletionItemProvider ( "fortran90" , completionProvider )
23
+ vscode . languages . registerHoverProvider ( 'fortran90' , hoverProvider ) ;
24
+ vscode . languages . registerDocumentSymbolProvider ( "fortran90" , symbolProvider ) ;
25
+
22
26
}
0 commit comments