main.js 694 B

1234567891011121314151617181920
  1. const MatchManager = require('./match-manager')
  2. const BracketMatcherView = require('./bracket-matcher-view')
  3. const BracketMatcher = require('./bracket-matcher')
  4. module.exports = {
  5. activate () {
  6. const watchedEditors = new WeakSet()
  7. atom.workspace.observeTextEditors(editor => {
  8. if (watchedEditors.has(editor)) return
  9. const editorElement = atom.views.getView(editor)
  10. const matchManager = new MatchManager(editor, editorElement)
  11. new BracketMatcherView(editor, editorElement, matchManager)
  12. new BracketMatcher(editor, editorElement, matchManager)
  13. watchedEditors.add(editor)
  14. editor.onDidDestroy(() => watchedEditors.delete(editor))
  15. })
  16. }
  17. }