Commit graph

74 commits

Author SHA1 Message Date
Henrik Lissner
d3124c4971
nit: add deprecation comments for projectile config
Ref: doomemacs/core#1
2024-08-09 20:42:33 -04:00
Jeetaditya Chatterjee
074528a89a feat(haskell): add tree-sitter support 2023-02-21 20:51:33 -05:00
Henrik Lissner
ceb985673c
fix(haskell): activate lsp! conditionally
use-package evaluates :preface *before* :when, so the two lsp! hooks
would run unconditionally, causing errors and warnings when opening a
haskell-mode buffer.

*
modules/lang/haskell/config.el (haskell-literate-mode-local-vars-hook):
add lsp! to hook.
2022-10-23 02:53:59 +02:00
Henrik Lissner
ad6a3d0f33
refactor: deprecate featurep! for modulep!
featurep! will be renamed modulep! in the future, so it's been
deprecated. They have identical interfaces, and can be replaced without
issue.

featurep! was never quite the right name for this macro. It implied that
it had some connection to featurep, which it doesn't (only that it was
similar in purpose; still, Doom modules are not features). To undo such
implications and be consistent with its namespace (and since we're
heading into a storm of breaking changes with the v3 release anyway),
now was the best opportunity to begin the transition.
2022-08-14 20:43:35 +02:00
Henrik Lissner
d58d084774
tweak(:lang,:tools): start eglot/lsp-mode later
To ensure lsp/eglot settings have precedence over local servers (e.g.
cider and lookup handlers).

Ref: clojure-emacs/cider#3170
2022-03-30 17:32:47 +02:00
Itai Y. Efrat
7d42c60f5a refactor(haskell): move +lsp setup to config.el 2021-09-15 01:56:26 +03:00
Itai Y. Efrat
a20cd88e8e refactor!(haskell): remove dante support
BREAKING CHANGE: Now that haskell-language-server is mature there is
little reason not to pick it over dante.
2021-09-15 01:56:26 +03:00
Itai Y. Efrat
6f2e05ea76 refactor!(haskell): remove ghcide support
BREAKING CHANGE: ghcide was archived a while back and now primarily
exists as a library used in the development of haskell-language-server.
It is not recommended for end-users, only for development. To this end I
think including it in the module is more misleading than helpful, and
the people that really want to use it can easily set it up themselves.

Ref: https://github.com/haskell/ghcide/pull/939
2021-09-15 01:56:26 +03:00
Henrik Lissner
d7061c8663
Remap haskell-mode-jump-to-def-or-tag to +lookup/definition 2020-05-12 20:07:11 -04:00
Henrik Lissner
1cb753cbb1
lang/haskell: remove intero support
The package was deprecated and abandoned upstream since November 2019.

Closes #2121
2020-04-14 19:27:33 -04:00
Henrik Lissner
00a21e98f0
Add +ghcide flag to lang/haskell
Closes #2622
2020-03-29 19:02:09 -04:00
Henrik Lissner
55e83da9e7
Don't kill haskell REPLs on ESC/C-g #2571 2020-02-20 20:30:43 -05:00
Henrik Lissner
61ed90c273
Merge pull request #2351 from nam3less/feature-haskell-evil-integration
Correct behaviour of normal mode 'o' and 'O' in haskell-mode
2020-02-20 20:30:00 -05:00
Henrik Lissner
12094788d7
Fix references to :tools fly{spell,check} 2020-01-14 03:04:26 -05:00
nam3less
d990cd9bd5 Added evil integration to haskell-mode
Overwrite the 'o' and 'O' normal mode commands to correctly indent
new lines.
Code was adapted from: https://github.com/haskell/haskell-mode/issues/1265
2020-01-11 01:47:41 +01:00
nam3less
18c50cbe1c Added evil integration to haskell-mode
Overwrite the 'o' and 'O' normal mode commands to correctly indent
new lines.
Code was adapted from: https://github.com/haskell/haskell-mode/issues/1265
2020-01-11 00:42:18 +01:00
Henrik Lissner
a4494800b8
lang/haskell: mark intero as deprecated #2121 2019-12-08 20:14:17 -05:00
Henrik Lissner
0b67251159
tools/eval: associate plist with repl handlers
Also consolidates all REPLs (opened through the :tools eval module)
under one popup rule, which inhibits ESC from prematurely closing
them (#1944), and cleans up after their buffers *only* if their handlers
weren't specified to :persist, e.g.

  (set-repl-handler! 'some-mode #'some-repl-handler :persist t)

Also standardized ESS's REPL commands.
2019-10-23 21:41:23 -04:00
Henrik Lissner
e1622142ed
Minor, general refactors 2019-10-23 03:57:48 -04:00
Henrik Lissner
88857b34ed
lang/haskell: prevent 'kill the whole session' prompts
When closing the haskell-interactive-mode popup.
2019-10-21 06:26:57 -04:00
Henrik Lissner
9b25582be1
Reduce list of root files projectile searches for
And define them on a per-module basis. This reduces the number of file
checks it performs, particularly for non-project files.

Might help #1317
2019-10-19 22:22:49 -04:00
Henrik Lissner
a3e262c7ac
💥 Refactor add-hook! macro & change arg order
This update may potentially break your usage of add-hook! if you pass
the :local or :append properties to it. This is how they used to work:

  (add-hook! :append 'some-mode-hook #'do-something)

Thsoe properties must now follow the hooks, e.g.

  (add-hook! 'some-mode-hook :append #'do-something)

Other changes:
- Various add-hook calls have been renamed to add-hook! because I
  incorrectly assumed `defun` always returned its definition's symbol,
  when in fact, its return value is "undefined" (so sayeth the
  documentation). This should fix #1597.
- This update adds the ability to add multiple functions to hooks
  without a list:

    (add-hook! 'some-mode-hook
               #'do-something
               #'do-something-else)

- The indentation logic has been changed so that consecutive function
  symbols at indented at the same level as the first argument, but forms
  are indent like a defun.

    (add-hook! 'some-mode-hook
               #'do-something
               #'do-something-else)

    (add-hook! 'some-mode-hook
      (message "Hello"))
2019-07-26 20:17:29 +02:00
Henrik Lissner
9eaee096c8
Minor comment revision & general code reformatting 2019-07-23 17:30:32 +02:00
Henrik Lissner
0c891dc33e
lang/haskell: minor refactor & reformatting 2019-03-04 04:57:07 -05:00
Aria Edmonds
b8be64f3b5 Add haskell lsp mode 2019-02-23 03:21:20 +11:00
Henrik Lissner
69ed1a4a99
feature/{syntax-checker,spellcheck} -> tools/fly{check,spell} 2019-02-22 00:25:30 -05:00
Henrik Lissner
94b16cba6c
Standardize REPL commands & improve SPC o r
- SPC o r now prompts for a REPL to open when none was found for the
  current buffer.
- REPL handlers must now follow the naming convention "*/open*-repl".
  e.g. +python/open-ipython-repl, +emacs-lisp/open-repl, etc.
- +eval/open-repl has been split in two:
  - +eval/open-repl-other-window
  - +eval/open-repl-same-window
2019-02-18 01:59:56 -05:00
Henrik Lissner
c82f71e7fe
lang/haskell: disable subword-mode by default
subword-mode is enabled by default for no other language, nor is it the
default behavior in vim (and it affects evil word motions), so it should
be opt-in.

Mentioned in #1083
2018-12-29 21:06:49 -05:00
Henrik Lissner
3f195614d9
Normalize :leader/:localleader keybinds
Evil states no longer apply to them. Also removes x-alt-keysym.
2018-12-23 23:54:27 -05:00
Henrik Lissner
7d3ffdff06
Remove third line in section headers
This is truly important stuff. We've saved many lives with this update.
2018-09-09 09:58:19 -04:00
Patrick Elliott
9b3442edae
Removed hindent (included in format-all) 2018-08-27 12:05:03 +02:00
Henrik Lissner
ce9f7f9bde
lang/haskell: minor reformatting & refactor
Conform to conventions, use `add-hook!` for multiple hooks, use single semi-colon for eol comments, remove comments redundant with code, and use sharp-quote to indicate function symbol.
2018-07-19 19:03:05 +02:00
Patrick Elliott
82fee01611 fix typo 2018-07-19 17:13:56 +02:00
Patrick Elliott
4980c66e15 Disable overlays conditionally if flycheck is loaded 2018-07-19 17:09:19 +02:00
Patrick Elliott
b0af6bcbef Add some useful haskell-mode options 2018-07-19 17:00:01 +02:00
Patrick Elliott
864e15f19d Add support for folding haskell code blocks 2018-07-19 16:37:22 +02:00
Patrick Elliott
3a5af1d591 Added subword mode hook. 2018-07-19 16:34:13 +02:00
Patrick Elliott
9d4c9c3306 Move haskell-mode bindings 2018-07-19 11:04:17 +02:00
Patrick Elliott
406e8f31f6 Move dante mode map 2018-07-19 11:03:16 +02:00
Patrick Elliott
dc68d7aad8 Moved intero map 2018-07-19 11:02:26 +02:00
Patrick Elliott
b0a754391a Added stack build support for intero users 2018-07-18 09:11:48 +02:00
Patrick Elliott
6334af8a84 Fix typo 2018-07-18 08:59:07 +02:00
Patrick Elliott
1f9fcd5c10 Lazily load bindings properly 2018-07-18 08:50:55 +02:00
Patrick Elliott
a0f800421e Merge develop 2018-07-18 08:36:29 +02:00
Henrik Lissner
2968374081
lang/haskell: fix haskell-hlint checker
Causing "not a valid syntax checker" errors because it haskell-hlint was
defined too soon.
2018-07-17 23:47:57 +02:00
Patrick Elliott
f981b9886e Add haskell keybindings 2018-07-17 23:43:08 +02:00
Henrik Lissner
0a4cdf8202
Make haskell-hlint setup DRY 2018-07-17 03:09:45 +02:00
Henrik Lissner
c31bb6a744
Add haskell-mode-jump-to-def-or-tag lookup handler 2018-07-15 20:44:47 +02:00
Henrik Lissner
69c8ef4141
Fix void-function haskell-interactive-mode 2018-07-15 20:44:11 +02:00
Henrik Lissner
e4db3f0020
Insert module file template in haskell files #752
Use file-template module instead of hook so it only gets triggered in a
valid project.
2018-07-14 23:16:39 +02:00