Commit Graph

94 Commits

Author SHA1 Message Date
7081d833f6 Move :ui pretty-code to :ui ligatures
Includes a major refactor of the module.
2020-08-20 02:14:32 -04:00
af76c873aa Fix "no org-babel-execute function for rust"
Mentioned in #3140
2020-07-15 01:11:01 -04:00
3e5b7cce3f [eglot] Add support for eglot lsp client in emacs
- Update README
- Add eglot-specifics to cc, rs, py, hs
  removing unused lsp-mode packages when eglot is active
- Add eglot-specific bindings
- Add doctor warnings for debugger +lsp and +peek
- Add eglot-backed lookup-handlers
- Add flycheck checker using eglot for :checkers
  syntax users (using flycheck/flycheck#1676 and
  flycheck/flycheck#1592 discussion).
  This implementation is based on @marsam code, and uses recent
  Flycheck development in order to make the code smaller and
  easier to maintain.
2020-05-28 09:34:10 +02:00
ba9448e17a Fix typo 2020-05-18 16:50:10 -07:00
7e9fa0f21b Use rustic-mode for rust org src blocks 2020-04-10 02:00:52 -04:00
296cbff097 General, minor refactor & reformatting 2020-03-27 18:06:42 -04:00
836c1b29ed Bump to Fuco1/smartparens@1f8857c
From Fuco1/smartparens@be8d5c9

Fixes #2543
Closes #2682
2020-03-08 17:30:50 -04:00
8d05600f25 Bump lsp-mode & rustic
brotzeit/rustic@9939691 -> brotzeit/rustic@373f5a1
emacs-lsp/lsp-mode@2e6b748 -> emacs-lsp/lsp-mode@6a94356
2020-03-04 21:59:42 +01:00
2ba21e5e8b Bump :lang rust
brotzeit/rustic@6dead0c -> brotzeit/rustic@9939691
2020-02-29 12:48:06 -05:00
429decef87 Fix #2623: don't replace rustic compilation popups 2020-02-27 21:55:12 -05:00
afa6b7ab90 Fix absolute path in rustic-analyzer-command by default 2020-02-27 11:55:27 -05:00
0e1a737127 Fix #2541: empty imenu list in rustic+rls buffers 2020-02-20 18:19:59 -05:00
cd3103b1be Bump to brotzeit/rustic@6dead0c
From brotzeit/rustic@da3820d

Due to changes upstream, users can no longer use lsp-rust-server to
switch to rust-analyzer with rustic-mode. Use rustic-lsp-server instead.
2020-02-20 18:19:45 -05:00
a4293b53a1 Enable rustic-clippy checker in LSP's absence 2020-02-06 15:20:42 -05:00
c5d6e6267c Bump to brotzeit/rustic@c7cab3f
My rust advice can be simplified thanks to brotzeit/rustic#87 being
merged.
2020-01-28 20:47:45 -05:00
8bed16eb72 fix message 2020-01-04 12:49:43 +01:00
960d756b47 General, minor refactors 2019-12-30 18:23:56 -05:00
a0425d0df7 lang/rust: add eglot docs & inhibit package.el usage #2195 2019-12-21 14:15:20 -05:00
c522ca4fc0 Minor refactors & cleanup 2019-12-15 15:53:28 -05:00
f2f8503246 lang/rust: use default LSP client instead of rustic's 2019-12-05 20:21:15 -05:00
e28b4215ec lang/rust: fix wrong-number-of-args: delete error
Reported in hlissner/doom-emacs@9775939
2019-12-03 20:41:17 -05:00
9775939f9d lang/rust: fix #2132
Prevents rust-mode from taking over *.rs files.
2019-12-02 20:22:00 -05:00
bf0a797a36 lang/rust: rustic-format-on-save -> rustic-format-trigger
The former is deprecated for the latter.
2019-12-02 20:22:00 -05:00
c86d400518 lang/rust: replace cargo.el w/ rustic-cargo #2108 2019-11-23 16:00:30 -05:00
99cd52e70f 💥 Drop Emacs 25.x support
Emacs 26.1 is Doom's new minimum supported version

Closes #2026
2019-11-08 16:02:06 -05:00
c360f0dceb Minor refactor & comment/docstring revision 2019-10-26 23:44:28 -04:00
fecca3188a lang/rust: rust-match-angle-brackets = nil (for evil users) 2019-10-22 19:37:30 -04:00
0e114b6766 lang/rust: remove editorconfig-indentation-alist entry
Merged upstream in editorconfig/editorconfig-emacs#208
2019-10-20 10:58:52 -04:00
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
e1edbcb3d9 Remove dtrt-indent entries for crystal, rust & scala
They were merged upstream in jscheid/dtrt-indent/pull/49
2019-10-19 15:01:37 -04:00
051bceb0a8 Refactor localleader keybinds #1270
Introduces a select few of the localleader keybind standards proposed in
issue #1270, corrects a few typos and introduces more localleader
keybinds in general.

Co-authored-by: yuhan0 <>
2019-10-04 22:04:47 -04:00
f05512c2e5 lang/rust: restore advice redefs
Update package-installed-p redefinition to use a safe `require`, so that rustic-setup-rls will fail gracefully if lsp/eglot aren't available.

And restore rustic-install-rls-client-p redefinition to prevent rustic from trying to install packages.
2019-09-20 14:49:39 -04:00
8e9d3fdc5d Fix package-installed-p hack for rustic 2019-09-20 21:49:44 +10:00
7f2c7e7ae3 lang/rust: prevent rustic from installing packages 2019-09-20 00:11:02 -04:00
e956c0dc5a lang/rust: enable rainbow-delimiters-mode #1787 2019-09-15 12:06:40 -04:00
56d2c95cc7 lang/rust: remove redundant editorconfig-indentation-alist entry 2019-08-15 14:51:06 -04:00
19ecf8e46a Correct last inline hook defuns
See a3e262c7 for rationale
2019-07-28 16:10:53 +02:00
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
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
149b2617b0 💥 revise hook/var fns naming convention (2/2)
This is second of three big naming convention changes. In this commit,
we change the naming conventions for hook functions and variable
functions:

1. Replace the bar | to indicate a hook function with a -h suffix, e.g.

     doom|init-ui -> doom-init-ui-h
     doom|run-local-var-hooks -> doom-run-local-var-hooks-h

2. And add a -fn suffix for functions meant to be set on variables,
   e.g.

     (setq magit-display-buffer-function #'+magit-display-buffer-fn)

See ccf327f8 for the reasoning behind these changes.
2019-07-22 02:30:38 +02:00
51d3b1b424 💥 revise advice naming convention (1/2)
This is first of three big naming convention updates that have been a
long time coming. With 2.1 on the horizon, all the breaking updates will
batched together in preparation for the long haul.

In this commit, we do away with the asterix to communicate that a
function is an advice function, and we replace it with the '-a' suffix.
e.g.

  doom*shut-up -> doom-shut-up-a
  doom*recenter -> doom-recenter-a
  +evil*static-reindent -> +evil--static-reindent-a

The rationale behind this change is:

1. Elisp's own formatting/indenting tools would occasionally struggle
   with | and * (particularly pp and cl-prettyprint). They have no
   problem with / and :, fortunately.
2. External syntax highlighters (like pygmentize, discord markdown or
   github markdown) struggle with it, sometimes refusing to highlight
   code beyond these symbols.
3. * and | are less expressive than - and -- in communicating the
   intended visibility, versatility and stability of a function.
4. It complicated the regexps we must use to search for them.
5. They were arbitrary and over-complicated to begin with, decided
   on haphazardly way back when Doom was simply "my private config".

Anyhow, like how predicate functions have the -p suffix, we'll adopt the
-a suffix for advice functions, -h for hook functions and -fn for
variable functions.

Other noteable changes:
- Replaces advice-{add,remove}! macro with new def-advice!
  macro. The old pair weren't as useful. The new def-advice! saves on a
  lot of space.
- Removed "stage" assertions to make sure you were using the right
  macros in the right place. Turned out to not be necessary, we'll
  employ better checks later.
2019-07-22 02:27:45 +02:00
8158cb1402 lang/rust: rustic-format-on-save = nil by default
Use :editor format instead.
2019-07-12 01:14:16 +02:00
5c09772219 lang/rust: fix rustic load order
Since both the rust-mode and rustic packages aggressively fight for
precedence in auto-mode-alist, rustic *must* be loaded after rust-mode,
so we switch from rust-mode to rustic-mode if it's available. This only
needs to happen once.
2019-07-11 01:09:30 +02:00
31875b64f4 Set rustic-rls-pkg sooner
To give the user an opportunity to change it.
2019-07-09 19:29:08 +02:00
a7a9951a50 lang/rust: fix void-function package-installed-p 2019-07-09 18:50:50 +02:00
7f735bcafa lang/rust: fix cannot load file t error with +lsp 2019-07-09 18:46:27 +02:00
236c9ceeab lang/rust: use rustic-mode instead on Emacs 26+ 2019-07-09 17:54:18 +02:00
f09a2b60c4 lang/rust: move lsp! to local-vars hook
i.e. start lsp-mode as late as possible
2019-07-07 17:39:19 +02:00
e577ce0162 add b prefix back 2019-07-05 16:15:05 +02:00
301173f35f remove b prefix, small refactor 2019-07-04 21:33:13 +02:00