Commit graph

122 commits

Author SHA1 Message Date
Henrik Lissner
8243c86f40
Bump haskell-mode, dante & intero
haskell/haskell-mode@3cf99d7 -> haskell/haskell-mode@4a87d72
chrisdone/intero@30d8e73 -> chrisdone/intero@fdb0550
jyp/dante@3e532e8 -> jyp/dante@4955bc7
2020-02-06 17:17:05 -05:00
Henrik Lissner
a9402cfb55
Fix #2373: bring back package pinning
This needs some serious refactoring...
2020-01-25 19:02:00 -05:00
Henrik Lissner
4cc14389e8
PIN ALL THE PACKAGES 2020-01-14 22:32:11 -05:00
Henrik Lissner
12094788d7
Fix references to :tools fly{spell,check} 2020-01-14 03:04:26 -05:00
Henrik Lissner
213a6fda86
General refactors & reformatting 2019-12-22 23:53:04 -05:00
Henrik Lissner
a4494800b8
lang/haskell: mark intero as deprecated #2121 2019-12-08 20:14:17 -05:00
Brian Wignall
199a6fab79 Fix typos 2019-12-01 22:31:19 -05:00
Henrik Lissner
c7a6cf8403
lang/haskell: change default to +dante #2121 2019-12-01 15:42:05 -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
Alexander Graul
b7a98cc788 Add openSUSE prerequisite instructions
These instructions were tested on openSUSE Tumbleweed and openSUSE Leap
15.1. There are some modules left that are not documented yet, but this
already improves the sitution for common openSUSE users.
2019-10-03 16:01:35 +02:00
Henrik Lissner
19ecf8e46a
Correct last inline hook defuns
See a3e262c7 for rationale
2019-07-28 16:10:53 +02: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
82ae3a73f3
def-advice!->defadvice! & conform to new advice conventions
This commit does two things:

- Renames def-advice! to defadvice!, in the spirit of naming convenience
  macros after the function/macro they enhance or replace.
- Correct the names of advice functions to indicate visibility and
  intent. A public advice function like doom-set-jump-a is meant to be
  used elsewhere. A private one like +dired--cleanup-header-line-a
  shouldn't -- it likely won't work anywhere but the function(s) it was
  made to advise.
2019-07-23 17:24:56 +02:00
Henrik Lissner
76cacb5bfe
💥 Rename def-package! -> use-package!
Calling this pivotal macro "def-package!" has frequently been a source
of confusion. It is a thin wrapper around use-package, and it should be
obvious that it is so. For this reason, and to match the naming
convention used with other convenience macros/wrappers, it is now
use-package!.

Also changes def-package-hook! -> use-package-hook!

The old macros are now marked obsolete and will be removed when straight
integration is merged.
2019-07-23 12:50:45 +02:00
Henrik Lissner
62af55dad0
Move emacs-snippets -> doom-snippets
The repo was renamed upstream.
2019-07-14 17:05:48 +02:00
Henrik Lissner
c399c07694
Add :tools lsp checks for +lsp flag
Also:
- Reorganizes some :lang modules' packages.el file.
- Adds setuptools check in lang/python
- Adds javac check in lang/java
- Removes the depends-on! macro
2019-04-24 18:16:05 -04:00
Henrik Lissner
ffe297bc7f
lang/haskell: rewrite README + minor refactor
- Documents lsp-haskell
- Use hie-wrapper on MacOS
- Update tools/lsp README to include :lang haskell
- Mention cabal-new-repl setting (#1140)
2019-04-07 16:46:59 -04:00
Henrik Lissner
a49a9fee3a
lang/haskell: fix +haskell/open-repl
REPL handlers must return a buffer but display-buffer returns a window.
2019-04-02 18:21:34 -04:00
Henrik Lissner
0c891dc33e
lang/haskell: minor refactor & reformatting 2019-03-04 04:57:07 -05:00
Henrik Lissner
eb3c569e1d
Replace +lsp|init with lsp! autodef 2019-03-02 01:34:19 -05:00
Henrik Lissner
9c085c0553
Set yas-indent-line only in haskell-mode 2019-02-25 22:26:13 -05:00
Aria Edmonds
69a6e60f84 lang/haskell +lsp: enable snippet completion 2019-02-26 02:18:57 +11:00
Aria Edmonds
a070343e22 haskell +lsp: change lsp to +lsp|init 2019-02-23 15:15:38 +11: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
499877fcff
lang/haskell: restore modified flag after flycheck
Dante quietly saves the current buffer (without triggering save hooks)
before invoking flycheck, unexpectedly leaving the buffer in an
unmodified state.

This is annoying if we depend on save hooks to do work on the
buffer (like reformatting), so we restore a (false) modified state.
2019-02-21 19:13:36 -05:00
Luigy Leon
09bdbd1bdd lang/haskell: only require intero when flag is set 2019-02-20 23:06:10 -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
Aria Edmonds
d68ecb7636 lang/haskell: fix dante completion 2019-01-21 06:21:09 +11: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
3befcf934e
Make +haskell-repl-buffer arg optional 2018-12-26 14:53:08 -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
d6cb0ec5f5
General cleanup & minor refactoring 2018-12-22 04:25:15 -05:00
Henrik Lissner
86305f2175
lang/haskell: just detect evil
Instead of detect the feature/evil module. This is more versatile.
2018-10-24 01:14:35 -04:00
Henrik Lissner
f9d6ee49ee
lang/haskell: fix evil keybinds for intero/dante 2018-10-24 01:08:11 -04:00
Martin Øinæs Myrseth
39059702c8 lang/haskell: Register intero-company backend 2018-10-04 21:56:43 +02:00
Henrik Lissner
fd19698927
doom|hack-local-variables => MODE-local-vars-hook
Uses a less destructive method (the same that Spacemacs uses) than the
one introduced in 13cee68, by introducing MODE-local-vars-hook hooks,
which run after local vars have been initialized.

The old method was to call `hack-local-variables` *before* mode hooks
run, however, this causes variables set by modes to have higher
precedence than local vars, which is unacceptable.

Also moved intero-mode & dante-mode to haskell-mode-local-vars-hook
2018-09-29 15:01:35 -04: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
cbc59f9333
Appease the byte-compiler 2018-07-30 12:10:11 +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