Is it possible to keep a language package setting from overriding core package settings?


#1

I am using a specific language package, language-lisp, to give some syntax highlighting on my Elisp files. Unfortunately, it seems to be overriding the bracket-matcher settings that automatically inserts a closing braces and quotes. What is the easiest way to keep this package from overriding those settings? Would I have to go into the package and manually code each one of those actions I’d like, or is there some sort of boolean I can set that lets Atom know that I want to use the bracket-matcher setting while this language-lisp is being used on an open Lisp / Elisp file (this would be ideal, although I’m not sure if this is how this works or not). I’d like to still have at least the closing double quote auto-inserted in those files, if nothing else. Any help would be greatly appreciated.


#2

It looks like language-lisp is deliberately disabling bracket-matcher – I suspect bracket-matcher has problems with Lisp code. There’s a couple of lisp-specific packages recommended in the language-lisp README:

  • Parinfer (suitable for beginners and gurus alike; automatically manages parentheses based on indentation)
  • Paredit (recommended for advanced users; manipulates code as abstract syntax tree)

Back when I was doing Lisp in Emacs I loved paredit, presumably the Atom package works similarly.


#3

Thanks, I’ll look into those packages. I’m sort of forced to use Elisp in a class in my degree, and while Emacs itself is alright, I’d prefer to use Atom more, as I’m really starting to enjoy using it, but there is just some things you can’t get around, such as evaluation and such.


#4

Been an Emacs fan for a long time, but it’s not keeping up with modern practices (too many people who won’t let it change). Love Lisp though, and there are some good standalone open-source Lisp options available now. Check out “guile” if you get a chance.