import sublime, sublime_plugin

class SyntaxMgrListener(sublime_plugin.EventListener):
    def on_load(self, view):
        if view.is_scratch() or view.settings().get('is_widget'): return
        syntaxmgr_settings = sublime.load_settings('SyntaxMgr.sublime-settings').get("syntaxmgr_settings")
        if not syntaxmgr_settings: return
        fname = view.file_name()

        for ss in syntaxmgr_settings:
            scopes = ss["scopes"] if "scopes" in ss else []
            extensions = ss["extensions"] if "extensions" in ss else []   
            extensions = ["." + e for e in extensions]         
            if (not scopes or view.score_selector(0, " ".join(scopes))) and \
               (not extensions or fname.lower().endswith(tuple(extensions))):
                for key, value in ss["settings"].items():
                    view.settings().set(key, value)



@@ -593,24 +593,16 @@
 nsions%5D 
-        
 %0A       
@@ -620,24 +620,29 @@
 t scopes or 
+any(%5B
 view.score_s
@@ -656,24 +656,29 @@
 (0, 
-%22 %22.join(
+s)%3E0 for s in 
 scopes
-)
+%5D
 )) a

fix bug for multi scopes