     # regex to search for tag open/close tag and close tag
     @JSXREGEXP = /(<)([$_A-Za-z](?:[$_.:\-A-Za-z0-9])*)|(\/>)|(<\/)([$_A-Za-z](?:[$._:\-A-Za-z0-9])*)(>)|(>)|({)|(})|(\?)|(:)/g
 
-    @autoJsx = atom.config.get('language-babel').autoIndentJSX
     @mouseUp = true
     @multipleCursorTrigger = 1
 
     @disposables = new CompositeDisposable()
+
+    @autoJsx = atom.config.get('language-babel').autoIndentJSX
 
     @disposables.add atom.commands.add 'atom-text-editor',
       'language-babel:auto-indent-jsx-on': (event) =>  @autoJsx = true


    if @eslintrcFilename = @getEslintrcFilename()
      @eslintrcFilename = new File(@eslintrcFilename)
      @getEslintrcOptions(@eslintrcFilename.getPath())
      # watch eslintrc for changes
      @disposables.add @eslintrcFilename.onDidChange =>
        return unless @autoJsx
        @getEslintrcOptions(@eslintrcFilename.getPath())

  destroy: () ->
    @disposables.dispose()

  # use eslint react format described at http://tinyurl.com/p4mtatv
  # to create indents. We can read .eslintrc here but don't parse strictly
  # turn spaces into tab dimensions which can be decimal
  readEslintrcOptions: (eslintrcFile) ->
    # get local path overides
    if fs.existsSync eslintrcFile
      fileContent = stripJsonComments(fs.readFileSync(eslintrcFile, 'utf8'))
