Commit Graph

1467 Commits

Author SHA1 Message Date
a4a42d3141 lang/ocaml: enable merlin-imenu and merlin-iedit (part of merlin)
merlin-imenu works nicely with `SPC / i`.

merlin-iedit is a refactoring tool that locates all occurences of an
identifier in scope and you can use multiple cursors to edit.
integration with evil-multiedit could be better.

There is also a merlin-xref backend, but since we got the individual
def/lookup/etc. already bound not sure if it is worth using it.

Signed-off-by: Edwin Török <edwin@etorok.net>
2018-10-17 00:06:20 +01:00
cdd39b20a5 lang/ocaml: add merlin-eldoc type and doc on hover display
This displays the type and documentation of thing under point
and highlights occurrences automatically when idle. Could be achieved by appropriate use of
keyboard shortcuts already set up by this module.

However `merlin-eldoc` can also display the expected type of function call parameters,
which merlin itself wouldn't.

Signed-off-by: Edwin Török <edwin@etorok.net>
2018-10-17 00:06:20 +01:00
50b324b683 lang/ocaml: always initialize merlin, but wait for a .merlin file for flycheck
Signed-off-by: Edwin Török <edwin@etorok.net>
2018-10-17 00:06:20 +01:00
3d6b30675c lang/ruby: remove redundant add-hook 2018-10-16 17:28:21 -04:00
5ceb64705f lang/ocaml: remove ocamlformat comment
It doesn't apply anymore
2018-10-16 14:02:55 -04:00
d1d9cffcc8 lang/ocaml: major refactor
+ Load flyspell-mode a little later, to allow file/dir-local variables
  to customize flyspell.
+ Ensure setters (in merlin's config) are used as late as possible, by
  making merlin's (and all the other packages) config run after tuareg
  is loaded.
+ As discussed, installing packages locally is a bit unreliable, so I'm
  commenting out the +ocaml-site-lisp flag, and rely solely on packages
  from MELPA.
+ Add optional ocamlformat check in doctor.el and conditionally load the
  ocamlformat package (if editor/format is enabled).
+ Add docstrings to init hooks.
2018-10-16 02:49:21 -04:00
3c77b0d260 lang/common-lisp: add settings & minor refactor
Thanks to @mfiano
2018-10-16 02:49:21 -04:00
cb33d96bfa lang/clojure: fix +clojure/repl
cider-jack-in takes one argument.

Reported by @mfiano
2018-10-16 02:49:21 -04:00
036a645058 lang/clojure: move command to autoload.el 2018-10-16 02:49:21 -04:00
94187d7326 Merge pull request #963 from mfiano/develop
lang/clojure: More changes
2018-10-16 02:07:19 -04:00
bef0f39535 lang/clojure: conform command to naming convention
Interactive commands in doom follow the `+module/name` naming convention. `+module|name` is used for hook functions.
2018-10-16 02:07:00 -04:00
4fc7de442e lang/clojure: group & update evil integration
Also removes evil-normalize-keymaps on cider-repl-mode-hook, because cider-repl-mode isn't a minor mode. The purpose of evil-normalize-keymaps is to ensure evil is aware of evil keybinds in minor-mode keymaps when it is first enabled.
2018-10-16 02:03:23 -04:00
a25257d8da lang/clojure: remove fuzzy completion for company
I prefer that fuzzy search is disabled by default, for consistency and performance. Fuzzy search tends to be much significantly slower, and no other company backend offers a fuzzy search mechanism (or should).

Fuzzy search is usually gated behind variables and flags, but since opting in here is a trivial one-liner, I don't think it needs one.
2018-10-16 01:55:38 -04:00
90140f1ab5 Add vala-mode 2018-10-16 06:22:34 +03:00
bd1f2ec4d6 lang/clojure: More changes
- Add a popup rule for the history buffer, since we want to see the REPL change while it's open
- Add hooks to enable company fuzzy completion
- Add more cider configuration options
- Configure Shift-Return to insert a newline and indent in the REPL without submitting the result
- Bind normal state keybindings for the CIDER history buffer
2018-10-15 23:08:59 -04:00
76da5b44d1 Merge pull request #905 from edwintorok/ocaml
OCaml module improvements
2018-10-15 22:45:39 -04:00
8577804a03 Merge pull request #945 from patrl/capture-tweaks
Capture template tweaks
2018-10-15 22:44:52 -04:00
53cf2b4e2b Restore space in personal todo checkbox 2018-10-15 22:44:39 -04:00
5ad27da2f1 lang/clojure: add binding to switch/set namespace
Add a local leader keybinding to both switch to the CIDER REPL buffer and set the namespace according to the file buffer.
2018-10-15 18:43:56 -04:00
f2de08d799 lang/common-lisp: move mrepl history file
To doom-cache-dir.

Credit to @mfiano
2018-10-15 16:22:53 -04:00
db7632b2b6 lang/clojure: persist cider repl history
Credit to @mfiano
2018-10-15 16:22:53 -04:00
cade77e4a9 lang/clojure: bind cider-jack-in to clojure-mode
cider-quit kills cider-mode, rendering cider-mode-map keybinds
unavailable, so these commands have been moved to clojure-mode-map, to
ensure they're always available.

Reported by @mfiano
2018-10-15 16:22:53 -04:00
064579e33e Improve ocaml language support
See README.org.

Signed-off-by: Edwin Török <edwin@etorok.net>
2018-10-15 20:37:58 +01:00
7cb1e489dc Revert personal TODO back to checkbox in capture template 2018-10-15 13:39:24 +02:00
476782e6d4 Merge pull request #959 from theSuess/develop
Updated documentation to use better gocode fork (again)
2018-10-15 03:29:08 -04:00
12ea77f937 Updated to prefered gocode fork (again) 2018-10-15 09:26:47 +02:00
0a1f42e25d Merge pull request #915 from myme/develop
Haskell + PureScript module improvements
2018-10-15 01:05:29 -04:00
afb883409a Merge pull request #896 from wildsebastian/develop
Deactivate expansion of abbreviations (ProofGeneral/Coq)
2018-10-15 01:03:54 -04:00
63a5c4239a lang/javascript: update tide project resolution
To match projectile changes upstream. Fixes an error when opening an
arbitrary JS file in a non-project root.
2018-10-15 00:50:39 -04:00
1c847402c4 lang/clojure: fix eldoc support in clojure-mode 2018-10-15 00:50:39 -04:00
b143d6c9f6 Merge pull request #937 from mfiano/develop
Some small additions to the common-lisp and clojure lang modules.
2018-10-15 00:25:52 -04:00
950f1bf53a Merge pull request #933 from theSuess/develop
Updated documentation to use better gocode fork (supports Go 1.11+)
2018-10-15 00:25:26 -04:00
efed58fcc8 Merge pull request #948 from patrl/org-pdfview
Open org links with `pdf-view-mode` (with `:tools pdf`)
2018-10-15 00:15:20 -04:00
b1f249afab lang/org: lazyload & refactor org-pdfview 2018-10-15 00:14:27 -04:00
752b92570d lang/latex: defconst -> defvar #955
Allow +latex-viewers to be set sooner.
2018-10-12 14:20:45 -04:00
623195e312 Checkboxes -> TODOs 2018-10-11 10:41:39 +02:00
251e9c0244 When :tools pdf is enabled, open org links to pdfs with pdf-view-mode 2018-10-10 22:00:30 +02:00
b59a27a160 Built-in capture templates add a link to the file from where capture was initiated 2018-10-10 17:36:25 +02:00
215ef4595c Added cider config and key bindings 2018-10-07 22:20:18 -04:00
5735a994e0 Do not display debugger or inspector buffers in a popup window. 2018-10-07 21:50:46 -04:00
cdf745e72a map!: remove buffer-local :desc properties
which-key labels are registered globally, and will not work for
buffer-local keybinds. Until general is brought in, we'll have to suffer
label-less localleader keybinds.
2018-10-07 21:34:24 -04:00
b89fcd8726 Replace Coq-Mode abbreviations with yasnippet
Since ProofGenerals abbreviation usage interfers with
evil-mode, this empties the abbreviation table of coq-mode.
The abbreviations got transformed into yasnippet snippets
and put into hlissner/emacs-snippets#4.
2018-10-07 09:18:25 +02:00
a078e3f4b2 lang/common-lisp: fix sly-mode localleader keys
This fixes a bug that caused evil keybinds on sly-mode-map to be
inaccessible until you switched states.
2018-10-07 00:47:14 -04:00
ba93402dcc lang/python: fix typo in +python-version
Thanks to @ztlevi
2018-10-07 00:46:50 -04:00
34d7e327b2 lang/common-lisp: sly-eval-region = eval handler
This allows you to use the `gr` operator to evaluate code on-the-fly.
2018-10-07 00:35:41 -04:00
e70a8d925e lang/common-lisp: fix consp errors on load 2018-10-07 00:35:25 -04:00
d84b516cf4 lang/common-lisp: don't start sly in temp buffers
Org source blocks use a temp buffer in lisp-mode to natively fontify CL
blocks, which can trigger sly. This prevents that.
2018-10-07 00:33:58 -04:00
f416e28857 lang/org: refactor default org-todo-keyword-faces
To ensure consistency
2018-10-06 20:57:43 -04:00
675f4fa821 lang/latex: enable flyspell-mode after local-vars
Gives setq hooks and file/directory-local variables the opportunity to
take effect before flyspell activates.
2018-10-06 20:56:18 -04:00
06cf518af8 lang/java: set meghanada-use-* vars earlier
Fixes a race condition where certain features ended up enabled too late
for the first buffer.
2018-10-06 20:44:25 -04:00