Commit Graph

83 Commits

Author SHA1 Message Date
87b616e5d8 refactor!: remove rainbow-delimiters
BREAKING CHANGE: parentheses will no longer be colored by depth. No
substitute is provided because it's trivial for users to install
themselves.

Ref: https://github.com/orgs/doomemacs/projects/5/views/1?pane=issue&itemId=117610828
2025-06-29 18:53:40 +02:00
bdd3701987 fix(common-lisp): inferior-lisp-program: accept list
To quote the docstring for `inferior-lisp-program`:

  Program name for starting a Lisp subprocess to Emacs.  Can be a string
  naming a program, a whitespace-separated string of \"EXECUTABLE ARG1
  ARG2\" or a list (EXECUTABLE ARGS...) where EXECUTABLE and ARGS are
  strings.

Fix: #8324
2025-03-24 18:21:33 -04:00
819c20bb69 feat(common-lisp): make quicklisp directory configurable
Previously, `+lisp/find-file-in-quicklisp` used a hard-coded directory
aimed at a nonstandard Quicklisp install location, `~/.quicklisp`. The
default install location is `~/quicklisp`, without the dot. This commit
makes the user's Quicklisp directory configurable through the variable
`+lisp-quicklisp-paths`. `+lisp/find-file-in-quicklisp` has been updated
to respect this variable.

Close: #7830
Co-authored-by: bpseudopod <bpseudopod@users.noreply.github.com>
2024-06-30 15:08:21 -04:00
dd95f8fb3d feat(common-lisp): add more sly packages
Might as well?
2024-04-01 13:31:13 -04:00
3dbbd8b68d feat(common-lisp): introduce sly-overlay 2024-02-06 16:09:16 -05:00
2853982447 feat(common-lisp): use sly-asdf
This allows us to offload system loading and testing to a third-party
library.
2024-01-24 12:28:43 -05:00
5efec260ef fix(format): use correct lisp format function
`apheleia--indent-lisp-buffer` does not exist.

Ref: #6369
2023-09-14 03:31:56 +02:00
f67f391443 fix(common-lisp): amend sly-compat hook 2023-09-13 20:21:08 +01:00
4d51e46c9f feat(format): add :lang common-lisp formatter 2023-09-13 20:20:59 +01:00
bb60f5f6bc feat(common-lisp): add project loading and testing commands
Doing so manually in a Sly REPL is otherwise time consuming and
repetitive.
2023-03-17 00:30:04 -04:00
8063b02a80 feat(common-lisp): set custom repl opener
After some experimentation, calling `sly` non-interactively when no
Slynk connection involves some strange async affects which displease the
REPL-opening code. Instead, we start the Slynk process, wait while it
loads, and then finally connect with the usual `sly-mrepl`, whose Elisp
would have been loaded by this point.
2023-03-08 20:31:25 -05:00
7a2be67efa refactor!: redesign module init/config hooks
BREAKING CHANGE: For consistency and correctness, I've renamed the
module init/config hooks, and added new ones:

- Adds doom-before-modules-config-hook
- Adds doom-after-modules-config-hook (replaced doom-before-init-modules-hook)
- Adds doom-before-modules-init-hook
- Adds doom-after-modules-init-hook (replaced doom-init-modules-hook)
- Removed doom-after-init-modules-hook (replaced w/ after-init-hook)

The old naming (and timing) was counterintuitive. Now, it's named after
the loaded file group (init.el vs config.el), and I added before/after
variants. Altogether, this should make them less ambiguous.

I've also moved some functions in various modules to more correct hooks.

Load order before this change:
- $EMACSDIR/early-init.el
- $EMACSDIR/lisp/doom.el
- $EMACSDIR/lisp/doom-start.el
- $DOOMDIR/init.el
- {$DOOMDIR,~/.emacs.d}/modules/*/*/init.el
- `doom-before-init-modules-hook'
- {$DOOMDIR,~/.emacs.d}/modules/*/*/config.el
- `doom-init-modules-hook'
- $DOOMDIR/config.el
- `doom-after-init-modules-hook'
- `after-init-hook'
- `emacs-startup-hook'
- `window-setup-hook'

Load order after this change:
- $EMACSDIR/early-init.el
- $EMACSDIR/lisp/doom.el
- $EMACSDIR/lisp/doom-start.el
- $DOOMDIR/init.el
- `doom-before-modules-init-hook'
- {$DOOMDIR,~/.emacs.d}/modules/*/*/init.el
- `doom-after-modules-init-hook'
- `doom-before-modules-config-hook'
- {$DOOMDIR,~/.emacs.d}/modules/*/*/config.el
- `doom-after-modules-config-hook'
- $DOOMDIR/config.el
- `after-init-hook'
- `emacs-startup-hook'
- `window-setup-hook'
2022-09-16 01:14:22 +02:00
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
4c3ea13818 fix(common-lisp): recognize multi-argument inferior-lisp-program (#5515)
For example: 'ros -Q run'

Co-authored-by: liyang <7325560@qq.com>
2021-09-24 12:42:45 +02:00
ff2d56794e Don't activate sly-mode in lisp-mode derived modes
Fixes some issues (like indentation or unrelated sly-mode warnings) in
lisp-like major modes (like fennel-mode).
2021-07-06 02:31:22 -04:00
f3496e7bc6 Fix sly-mode not activating on lisp-mode
Due to changes upstream (joaotavora/sly@becf7b7)
2020-07-22 18:49:05 -04:00
9073a5d402 Fix #3610: revert changes to cmd!! macro
Half-reverts e6c88e4384
2020-07-22 17:09:38 -04:00
2eb8f7f7b8 lang/common-lisp: fix typo 2020-05-23 15:38:22 -04:00
1413c02b25 sly-pop-find-definition -> sly-pop-find-definition-stack 2020-05-09 00:30:21 -04:00
ab0d37776b Bind gb to sly pop commands 2020-05-08 06:23:28 -04:00
9deb470f16 Fix gr/gR/K keybinds in sly-mode
And reindent map!
2020-04-30 20:37:19 -04:00
69f14bc3da Apply smartparens lisp rules to sly-mrepl-mode 2020-03-06 15:26:36 -05:00
88dd15e204 Revise comments 2020-02-28 22:26:19 -05:00
ca97300f84 Load sly-contribs immediately, after sly loads
To fix a load order issue with some sly plugins (like sly-macrostep) not
loading early enough, thus requiring the buffer be reloaded or reverted
to activate them.
2020-02-24 20:37:46 -05:00
b30f38ac06 Minor refactor & reformatting across the board 2020-02-23 15:42:43 -05:00
a7b945be0e Revert cb86fd046c (restore macrostep-expand)
sly-macroexpand changes macrostep-expand to behavior correctly in CL
buffers.
2020-02-22 18:43:25 -05:00
7224f0870a lang/common-lisp: add *sly-description* popup rule 2020-02-02 02:02:50 -05:00
cb86fd046c lang/common-lisp: SPC m {m,M} -> sly macroexpand
macrostep-expand was the wrong command (and plugin).
2020-02-02 02:01:40 -05:00
b45cc335db lang/common-lisp: offload to evil-collection-sly 2019-10-12 00:48:48 -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
d297dc6934 Minor refactor & comment revision across the board 2019-10-03 23:33:59 -04:00
66abe99dec Increase sly REPL popup's size #1296 2019-10-03 20:49:04 -04:00
464e7f8bbd lang/common-lisp: remove obsolete advice 2019-08-21 15:02:53 -04:00
19ecf8e46a Correct last inline hook defuns
See a3e262c7 for rationale
2019-07-28 16:10:53 +02:00
02f2ad1e8d lang/common-lisp: conform to new conventions 2019-07-26 03:12:07 +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
77e4cc4d58 💥 Remove :feature category
:feature was a "catch-all" category. Many of its modules fit better in
other categories, so they've been moved:

- feature/debugger -> tools/debugger
- feature/evil -> editor/evil
- feature/eval -> tools/eval
- feature/lookup -> tools/lookup
- feature/snippets -> editor/snippets
- feature/file-templates -> editor/file-templates
- feature/workspaces -> ui/workspaces

More potential changes in the future:

- A new :term category for terminal emulation modules (eshell, term and
  vterm).
- A new :os category for modules dedicated to os-specific functionality.
  The :tools macos module would fit here, but so would modules for nixos
  and arch.
- A new :services category for web-service integration, like wakatime,
  twitter, elfeed, gist and pastebin services.
2019-04-24 18:16:04 -04:00
7885cbb4f7 Merge sly db/inspector popup rule into others 2019-04-14 13:39:57 -04:00
5e7638d061 Merge pull request #1287 from mfiano/common-lisp-bindings-fix-1
Changed some wrong common-lisp bindings
2019-04-02 15:35:59 -04:00
0b2f18542c Fixed bug where sly-db-quit was not being called 2019-03-28 22:31:06 -04:00
275bea568e Added more bindings 2019-03-28 21:40:06 -04:00
d77e1fa15f Removed common-lisp macrostep hydra
This can cause a variety of problems, and the actual macrostep mode
toggle has the same keybindings, so no loss of functionality.
2019-03-28 20:00:50 -04:00
2f35680845 Added labels for Sly bindings 2019-03-28 19:56:00 -04:00
a4364b3fea Added a label for starting Sly.
Also added a command for starting Sly with a choice for the
implementation to use.
2019-03-28 19:17:32 -04:00
9519003bcd Fix common-lisp local leader prefix labels 2019-03-28 19:05:52 -04:00
80ea315cca Changed some wrong common-lisp bindings
The Sly documentation which these were originally based off of is out of
date, causing some of the bindings to have no longer defined functions.
2019-03-28 18:28:10 -04:00
9a8f3070a6 Merge pull request #1119 from mfiano/patch-3
common-lisp module: Added keybind to quit sly-xref-mode windows
2019-01-20 14:10:51 -05:00
195212f71c Merge pull request #1118 from mfiano/patch-2
common-lisp module: Fix sly-db button binding
2019-01-20 14:10:16 -05:00
a183fcddf5 common-lisp module: Added keybind to quit sly-xref-mode windows 2019-01-14 20:48:03 -05:00
ddc0c1fc21 common-lisp module: Fix sly-db button binding 2019-01-14 20:07:41 -05:00