@@ -16,12 +16,14 @@ import * as telemetryHelper from './common/telemetry';
1616import * as telemetryContracts from './common/telemetryContracts' ;
1717import { activateSimplePythonRefactorProvider } from './providers/simpleRefactorProvider' ;
1818import { activateSetInterpreterProvider } from './providers/setInterpreterProvider' ;
19+ import { CommentNewLineFormatProvider } from './providers/commentNewLineFormatProvider' ;
1920import { activateExecInTerminalProvider } from './providers/execInTerminalProvider' ;
2021import * as tests from './unittests/main' ;
2122import * as jup from './jupyter/main' ;
2223import { HelpProvider } from './helpProvider' ;
2324import { activateFormatOnSaveProvider } from './providers/formatOnSaveProvider' ;
2425import { WorkspaceSymbols } from './workspaceSymbols/main' ;
26+ import * as os from 'os' ;
2527
2628const PYTHON : vscode . DocumentFilter = { language : 'python' , scheme : 'file' } ;
2729let unitTestOutChannel : vscode . OutputChannel ;
@@ -88,7 +90,11 @@ export function activate(context: vscode.ExtensionContext) {
8890 tests . activate ( context , unitTestOutChannel ) ;
8991
9092 context . subscriptions . push ( new WorkspaceSymbols ( lintingOutChannel ) ) ;
91-
93+
94+ // In case we have CR LF
95+ const triggerCharacters : string [ ] = os . EOL . split ( '' ) ;
96+ triggerCharacters . shift ( ) ;
97+ context . subscriptions . push ( vscode . languages . registerOnTypeFormattingEditProvider ( PYTHON , new CommentNewLineFormatProvider ( ) , os . EOL . substring ( 0 , 1 ) , ...triggerCharacters ) ) ;
9298 const hepProvider = new HelpProvider ( ) ;
9399 context . subscriptions . push ( hepProvider ) ;
94100}
0 commit comments