@@ -12,14 +12,12 @@ import {PythonFormattingEditProvider} from './providers/formatProvider';
1212import * as sortImports from './sortImports' ;
1313import { LintProvider } from './providers/lintProvider' ;
1414import { PythonSymbolProvider } from './providers/symbolProvider' ;
15- import * as formatOnSaveProvider from './providers/formatOnSaveProvider' ;
16- // import * as languageClient from './languageClient';
15+ import { activateFormatOnSaveProvider } from './providers/formatOnSaveProvider' ;
1716import * as path from 'path' ;
1817import * as settings from './common/configSettings'
1918import { activateUnitTestProvider } from './providers/testProvider' ;
2019
2120// import {PythonSignatureHelpProvider} from './providers/signatureProvider';
22- // import {PythonIndentFormatProvider} from './providers/indentFormatProvider';
2321
2422const PYTHON : vscode . DocumentFilter = { language : 'python' , scheme : 'file' }
2523let unitTestOutChannel : vscode . OutputChannel ;
@@ -40,6 +38,17 @@ export function activate(context: vscode.ExtensionContext) {
4038
4139 sortImports . activate ( context ) ;
4240 activateUnitTestProvider ( context , pythonSettings , unitTestOutChannel ) ;
41+ activateFormatOnSaveProvider ( PYTHON , context , pythonSettings , formatOutChannel ) ;
42+
43+ //Enable indentAction
44+ vscode . languages . setLanguageConfiguration ( PYTHON . language , {
45+ onEnterRules : [
46+ {
47+ beforeText : / ^ (?: d e f | c l a s s | f o r | i f | e l i f | e l s e | w h i l e | t r y | w i t h | f i n a l l y ) .* ?: \s * $ / ,
48+ action : { indentAction : vscode . IndentAction . Indent }
49+ }
50+ ]
51+ } ) ;
4352
4453 context . subscriptions . push ( vscode . languages . registerRenameProvider ( PYTHON , new PythonRenameProvider ( context ) ) ) ;
4554 context . subscriptions . push ( vscode . languages . registerHoverProvider ( PYTHON , new PythonHoverProvider ( context ) ) ) ;
@@ -50,9 +59,7 @@ export function activate(context: vscode.ExtensionContext) {
5059 // context.subscriptions.push(vscode.languages.registerSignatureHelpProvider(PYTHON, new PythonSignatureHelpProvider(context), '('));
5160
5261 context . subscriptions . push ( vscode . languages . registerDocumentFormattingEditProvider ( PYTHON , new PythonFormattingEditProvider ( context , pythonSettings , formatOutChannel ) ) ) ;
53-
5462 context . subscriptions . push ( new LintProvider ( context , pythonSettings , lintingOutChannel ) ) ;
55- formatOnSaveProvider . activate ( PYTHON , context , pythonSettings , formatOutChannel ) ;
5663}
5764
5865// this method is called when your extension is deactivated
0 commit comments