@@ -39,13 +39,23 @@ for (const languageId of languagesIds) {
3939
4040 monaco . languages . setTokenizationSupportFactory ( languageId , {
4141 createTokenizationSupport : async ( ) => {
42- return getOrCreateTextMateTokensProvider ( languageId ) . catch ( async err => {
42+ return getOrCreateTextMateTokensProvider ( languageId ) . catch ( async ( error : Error ) => {
4343 const monarchLoader = monarchLanguageLoader [ languageId ]
4444 if ( monarchLoader != null ) {
45- console . warn ( `Failed to load TextMate grammar for language ${ languageId } , fallback to monarch` , err )
46- monaco . languages . setMonarchTokensProvider ( languageId , ( await monarchLoader ( ) ) . language )
45+ monaco . errorHandler . onUnexpectedError ( new Error ( `Failed to load TextMate grammar for language ${ languageId } , fallback to monarch` , {
46+ cause : error
47+ } ) )
48+ try {
49+ monaco . languages . setMonarchTokensProvider ( languageId , ( await monarchLoader ( ) ) . language )
50+ } catch ( error ) {
51+ monaco . errorHandler . onUnexpectedError ( new Error ( `Failed to load Monarch grammar for language ${ languageId } ` , {
52+ cause : error as Error
53+ } ) )
54+ }
4755 } else {
48- console . warn ( `Failed to load TextMate grammar for language ${ languageId } and no fallback monarch` , err )
56+ monaco . errorHandler . onUnexpectedError ( new Error ( `Failed to load TextMate grammar for language ${ languageId } and no fallback monarch` , {
57+ cause : error
58+ } ) )
4959 }
5060 return null
5161 } )
@@ -87,7 +97,9 @@ languageService.onDidEncounterLanguage(async (languageId) => {
8797 }
8898
8999 loadLanguageConfiguration ( languageId ) . catch ( error => {
90- console . error ( 'Unable to load language configuration' , error )
100+ monaco . errorHandler . onUnexpectedError ( new Error ( `Unable to load language configuration for language ${ languageId } ` , {
101+ cause : error
102+ } ) )
91103 } )
92104} )
93105
0 commit comments