1
1
mirror of https://github.com/github/semantic.git synced 2024-12-30 02:14:20 +03:00
Commit Graph

6 Commits

Author SHA1 Message Date
joshvera
126cdc5285 Make typeapplications a default extension 2018-03-26 12:00:19 -04:00
joshvera
dbaf374d3a Merge remote-tracking branch 'origin/master' into remove-fail 2018-03-23 15:29:47 -04:00
joshvera
68ca81ad97 Merge branch 'module-resolution' into remove-fail 2018-03-23 11:01:13 -04:00
joshvera
f2169e09a9 Move MultiParamTypeClasses, StandaloneDeriving, and DataKinds to default-extensions 2018-03-22 12:23:11 -04:00
Rob Rix
91cf38722b Add MultiParamTypeClasses to the defaults.
`haskell-src-exts` is quite broken when it comes to `MultiParamTypeClasses`:

- https://github.com/jaspervdj/stylish-haskell/issues/129
- https://github.com/haskell-suite/haskell-src-exts/issues/304
- `FunctionalDependencies` implies `MultiParamTypeClasses`, but `haskell-src-exts` doesn’t know that

Enabling it by default should correct this.
2018-03-06 15:20:53 -05:00
Patrick Thomson
7576c09b4d Add stylish-haskell configuration file.
This introduces a configuration file to ease the use of the
[stylish-haskell](https://github.com/jaspervdj/stylish-haskell)
formatting tool. While the `semantic` codebase is already quite
well-formatted, this tool makes it easy to DTRT when writing new code,
and is a good place to centralize our coding style.

Installing `stylish-haskell` is as easy as `stack install stylish-haskell`.
You can always opt-out! This is all entirely optional.

Editor support:
* emacs — bind `haskell-mode-stylish-buffer` to a keybinding or hook.
* vim — `:set formatprg=stylish-haskell` or install `vim-stylish-haskell`.
* atom — if you have `haskell-ide` installed, the Prettify menu item
  should do the right thing.

It's worth reading through the options that stylish-haskell
provides. The options I chose here differ a bit from the default, as I
tried to pick a style that's cromulent with the codebase as it exists
today. If you have any thoughts as to what stylistic changes we could
or should make (example: though I've disabled it, stylish-haskell
makes it easy to keep every `LANGUAGE` pragma on the same line),
please let me know.

I don't think it's necessary to go through and apply `stylish` to our
existing codebase, as it would pollute the history. But I plan to use
it going forward, and maybe you will too!
2018-03-06 14:00:15 -05:00