There are two reasons for doing this:
- It's inefficient, we don't have to define the pairs every time we
enter the mode.
- It's extremely difficult to override the pair definition, even with
`eval-after-load` and `add-hook`
web-mode's auto paring is in conflict with smartparens. With
smartparens, since the closing '>' is inserted right after the opening
'<' and web-mode is not aware of that, the extra closing '>' would be
inserted. That's very annoying.
- Code indent offset is subjected to personal taste, I think we should
stick to the web-mode default, which is sensible enough, and leave it
to the user to decide.
- `web-mode-disable-autocompletion` is no longer used by web-mode.
- As to `newline-and-indent`, I think we should be consistent across all
major modes. And this line of code will become useless with Emacs 24.4.