Commit graph

294 commits

Author SHA1 Message Date
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
77e9932966
bump: :core
Fuco1/smartparens@37f77bf2e2 -> Fuco1/smartparens@ec15aaa748
Wilfred/helpful@67cdd1030b -> Wilfred/helpful@209971ba9f
bbatsov/projectile@f3468e8d20 -> bbatsov/projectile@4d6da873ae
domtronn/all-the-icons.el@65c496d3d1 -> domtronn/all-the-icons.el@ca1ef30004
emacs-straight/project@4fe1eec803 -> emacs-straight/project@c52ec93689
jscheid/dtrt-indent@66fc30af02 -> jscheid/dtrt-indent@57f4072fa8
justbur/emacs-which-key@1217db8c63 -> justbur/emacs-which-key@1ab1d0cc88
raxod502/straight.el@e2de88ea0e -> radian-software/straight.el@0e204d418d

Includes a fix for #5207 (see radian-software/straight.el#955), which
occasionally caused arrayp errors when installing/upgrading packages.

Fix: #5207
Ref: radian-software/straight.el#955
2022-06-17 18:21:23 +02:00
Gavin Downard
499cf5e626 tweak(ivy): use helpful for counsel descbinds
`counsel-describe-symbol-function' still doesn't use `helpful-symbol'
because `helpful-symbol' throws up a prompt when the symbol refers to
both a function and a variable.
2022-04-06 20:40:26 +02:00
Henrik Lissner
8455bcf6b4
fix(ivy): omit hidden files in counsel-file-jump
385e60cd26 was a bit hasty. Rather than disregard all ignore files, we
should simply exclude projectile-globally-ignored-directories entries
from the file list. This is a stop-gap measure while I work on a better,
more general solution for all our :completion modules.

Amend: 385e60cd26
Ref: https://www.reddit.com/r/emacs/comments/tj0na6/moving_from_doom_to_vanilla/?utm_source=share&utm_medium=web2x&context=3
Ref: #6210
2022-03-30 17:32:41 +02:00
Henrik Lissner
385e60cd26
fix(ivy): include hidden files in counsel-file-jump
fd was omitted ignored/hidden files, which is inconsistent with
ripgrep's output (when fd is absent).

Ref: https://www.reddit.com/r/emacs/comments/tj0na6/comment/i1laya6/?utm_source=reddit&utm_medium=web2x&context=3
2022-03-22 02:13:17 +01:00
Henrik Lissner
49a464a870 fix(default): missing evil-ex-registers for non-ivy users
It was `evil-show-registers' that we wanted, not
`evil-ex-registers' (which never existed in the first place). Folks who
did not have :completion ivy enabled (e.g. vertico and helm users) would
see 'commandp, evil-ex-registers' errors when pressing `SPC i r`. Folks
who had it enabled would transparently invoke `counsel-evil-registers'
instead (because it was remapped).

Fix: #5753
2021-11-21 15:34:57 +01:00
Henrik Lissner
bae7ab0d8d fix(ivy): remove hard dependency on flx
Ivy tries to load flx to determine if fuzzy capabilities should be
enabled by default, causing #5681. Let's not do that.

Fix: #5681
Close: #5690
2021-10-29 14:48:32 +02:00
Henrik Lissner
06392a723f refactor: rename orig-fn arg in advice to fn
A minor tweak to our naming conventions for the first argument of an
:around advice.
2021-08-04 01:53:12 -04:00
Itai Y. Efrat
b3dfd4758d don't explicitly set projectile-completion-system
The default value is `'auto`, which handles the detection of the active
completion system, see the definition of `projectile-completing-read`.
2021-07-03 15:20:59 +03:00
Daanturo
18a149b3e3 Add :not counsel-org-goto to ivy-prescient-sort-commands 2021-05-26 16:46:24 +07:00
Itai Y. Efrat
8a40e83ab5 unicode-chars-list-chars -> insert-char
`unicode-chars-list-chars` doesn't seem to be an actual function (not
defined in emacs or found online), and `insert-char` seems like what one
would want here.
2021-05-13 17:04:16 +03:00
Orlando Osorio
0fb8136b3b Add counsel-jq to ivy-prescient-sort-commands 2021-05-07 21:18:56 -04:00
Henrik Lissner
a0de71dee8 Fix #4886: fix +ivy-buffer-preview for SPC b B 2021-04-18 12:43:00 -04:00
daanturo
b317910b6e Add counsel-outline to ivy-prescient-sort-commands 2021-04-12 18:29:24 +07:00
Henrik Lissner
62df2c386a Fix #4766: workaround for ivy-prescient wrong-type-arg error
ivy-resume + prefix arg = resume named session, but throws an error when
ivy-prescient is present.
2021-03-10 10:48:57 -05:00
daanturo
ba02790ba0 Enable ivy-rich-project-root-cache-mode. 2021-02-08 11:43:17 +07:00
datool
20c6246313
Remap describe-symbol to counsel-describe-symbol . (#4593)
* Remap `describe-symbol` to `counsel-describe-symbol` .
"SPC h o" now uses `counsel-describe-symbol` instead of plain `helpful-symbol` (maybe with completion) to get input.

* Remove counsel-describe-symbol-function change

Co-authored-by: Henrik Lissner <henrik@lissner.net>
2021-01-30 18:24:25 -05:00
JerryChu
b4fbafe451 Fix path separator in msys2 2021-01-21 14:10:14 +08:00
Henrik Lissner
b6d8a98402 Fix +ivy--set-jump-point-maybe-h: wrong-type-argument markerp 2021-01-18 19:59:18 -05:00
Henrik Lissner
39deb6aedb
Resolve remote path to fd/rg for counsel-find-file 2021-01-08 17:14:27 -05:00
Henrik Lissner
34c5dad750
Add value+docstring columns to doom/help-custom-variable
When used with ivy. Also: slight refactor of doom/help-custom-variable.
2021-01-05 19:29:19 -05:00
Alois Janíček
8afd8a6ce8
Restore user ability to toggle ivy related hydras
There are two hydras that can be opened from ivy interface:

1. `ivy-dispatching-done' (doom key: "C-o", vanilla key: "M-o")
2. `hydra-ivy/body'       (doom key: "M-o", vanilla key: "C-o")

Original behavior is that they both can be exited / toggled
by the same key they were opened.

This commit restores the original behaviour but does it without
reverting the decision to swap the "C-o" and "M-o" key bindings.
2020-12-15 00:28:50 +01:00
Alois Janíček
e7696893f4
ivy-read-action-function = ivy-hydra-read-action
Use hydra to read user action when calling `ivy-dispatching-done`
2020-12-15 00:10:29 +01:00
Henrik Lissner
65416ff472
Fix #4427: ivy-read-action-format-function = ivy-read-action-format-columns
And remove max-mini-window-height, which interferes with ivy's own
minibuffer resizing logic, and isn't a terribly helpful default anyway.
2020-12-13 15:42:52 -05:00
Henrik Lissner
89db59769d
Re-enable ivy in evil-ex completion
Seems its earlier issues are no longer a problem.
2020-12-12 15:56:36 -05:00
Henrik Lissner
765b6dcfca
Unset unused markers
In case of overlay leaks.
2020-12-12 15:56:36 -05:00
Henrik Lissner
c4a0174fe2
ivy-read-action-format-function = ivy-hydra-read-action
Makes ivy's C-o dispatching commands easier to see.
2020-12-12 15:56:36 -05:00
Stefan Lendl
7b11f67c76 counsel-bookmark use filename only if available
fixes #4344
2020-12-01 16:14:49 +01:00
Henrik Lissner
7febca1988
Merge pull request #3414 from Andre0991/add-ivy-avy
Add `ivy-avy`
2020-11-27 23:26:08 -05:00
Henrik Lissner
db66b8af31
Omit .git from projectile-find-file & ocunsel-file-jump 2020-11-16 20:10:26 -05:00
Henrik Lissner
cfcd010cd6
Revert ivy-magic-slash-non-match-action to nil 2020-11-16 19:26:27 -05:00
Henrik Lissner
bba035a1a2
Fix void-function +ivy-prescient-non-fuzzy in daemon 2020-10-16 23:42:59 -04:00
Henrik Lissner
35185b2175
Split doom-reload-hook into before/after hooks 2020-10-16 22:28:08 -04:00
Henrik Lissner
8024f4edf9
Fix #3215 (again): --path-separator /
Use a single slash.
2020-09-01 06:45:04 -04:00
Mike Chen
93795633dd
fix ivy not working well with lsp-ivy-workspace-symbol
More details here: emacs-lsp/lsp-ivy#18 (comment)
2020-08-26 15:09:52 +08:00
Henrik Lissner
d02d78c3fa
Make find-file-in-project faster in large projects 2020-08-13 17:02:25 -04:00
Henrik Lissner
db7b2f6da9
completion/ivy: show chevron on highlighted item in tty
So its easier to see in the terminal, where some themes may not have a
visible background for the current match.
2020-08-07 23:07:51 -04:00
Henrik Lissner
89915715a6
Fix #3586: truncated filenames from counsel-file-jump
When using ripgrep instead of fd.
2020-07-18 19:40:01 -04:00
Henrik Lissner
523e945a3a
Fix #3215: ripgrep reporting error code 2 on Windows
Closes #3512
2020-07-17 19:24:26 -04:00
Andre Peric Tavares
41b237e06e
Add ivy-avy
`ivy-avy` makes it possible to select a candidate with `avy` by using `C-'` in an ivy minibuffer.
This functinally used to come with `swiper`, but it was split: https://github.com/melpa/melpa/pull/6951
2020-06-18 23:18:26 -03:00
Henrik Lissner
235ad55ba1
Force counsel-rg-base-command to be a list
Counsel allows `counsel-rg-base-command' to be a string or list. This
backwards compatibility is a maintenance burden for Doom, so it's
simpler to force it to always be a list.
2020-06-07 13:58:12 -04:00
Henrik Lissner
85883facf5
Bump :completion ivy
Yevgnen/ivy-rich@3f818b2 -> Yevgnen/ivy-rich@1097013
abo-abo/swiper@04ca164 -> abo-abo/swiper@544e7de
ericdanan/counsel-projectile@126e825 -> ericdanan/counsel-projectile@77392cb
tumashu/ivy-posframe@ae9bafe -> tumashu/ivy-posframe@4474956
2020-06-05 01:19:03 -04:00
Henrik Lissner
8089b5b723
Make change to counsel-rg-base-command idempotent
So doom/reload doesn't clobber it.
2020-06-05 00:47:35 -04:00
Henrik Lissner
f548ab600c
Fix #2351: counsel-rg errors on Windows 2020-06-05 00:43:51 -04:00
Henrik Lissner
8bf902d5f4
General refactors & reformatting across the board 2020-06-04 20:13:28 -04:00
Henrik Lissner
f5e120eefe
Fix #3219: icon repetition after doom/reload
Due to faulty member detection (`cl-pushnew` uses `eql` by default,
which can't compare compound data structures).
2020-05-26 20:32:55 -04:00
Henrik Lissner
ea18c83c0a
General refactors & reformatting across the board 2020-05-15 01:44:53 -04:00
Henrik Lissner
0e851ace9b
Backport bits of CLI rewrite
The rewrite for Doom's CLI is taking a while, so I've backported a few
important changes in order to ease the transition and fix a couple bugs
sooner.

Fixes #2802, #2737, #2386

The big highlights are:

- Fix #2802: We now update recipe repos *before* updating/installing any
  new packages. No more "Could not find package X in recipe repositories".

- Fix #2737: An edge case where straight couldn't reach a pinned
  commit (particularly with agda).

- Doom is now smarter about what option it recommends when straight
  prompts you to make a choice.

- Introduces a new init path for Doom. The old way:
  - Launch in "minimal" CLI mode in non-interactive sessions
  - Launch a "full" interactive mode otherwise.
  The new way
  - Launch in "minimal" CLI mode *only* for bin/doom
  - Launch is a simple mode for non-interactive sessions that still need
    access to your interactive config (like async org export/babel).
  - Launch a "full" interactive mode otherwise.

  This should fix compatibility issues with plugins that use the
  async.el library or spawn child Emacs processes to fake
  parallelization (like org's async export and babel functionality).

- Your private init.el is now loaded more reliably when running any
  bin/doom command. This gives you an opportunity to configure its
  settings.

- Added doom-first-{input,buffer,file}-hook hooks, which we use to queue
  deferred activation of a number of packages. Users can remove these
  modes from these hooks; altogether preventing them from loading,
  rather than waiting for them to load to then disable them,
  e.g. (after! smartparens (smartparens-global-mode -1)) -> (remove-hook
  'doom-first-buffer #'smartparens-global-mode)

  Hooks added to doom-first-*-hook variables will be removed once they
  run.

  This should also indirectly fix #2386, by preventing interactive modes
  from running in non-interactive session.

- Added `doom/bump-*` commands to make bumping modules and packages
  easier, and `doom/bumpify-*` commands for converting package!
  statements into user/repo@sha1hash format for bump commits.

- straight.el is now commit-pinned, like all other packages. We also
  more reliably install straight.el by cloning it ourselves, rather than
  relying on its bootstrap.el.

  This should prevent infinite "straight has diverged from master"
  prompts whenever we change branches (though, you might have to put up
  with it one more after this update -- see #2937 for workaround).

All the other minor changes:

- Moved core/autoload/cli.el to core/autoload/process.el
- The package manager will log attempts to check out pinned commits
- If package state is incomplete while rebuilding packages, emit a
  simpler error message instead of an obscure one!
- Added -u switch to 'doom sync' to make it run 'doom update' afterwards
- Added -p switch to 'doom sync' to make it run 'doom purge' afterwards
- Replace doom-modules function with doom-modules-list
- The `with-plist!` macro was removed, since `cl-destructuring-bind`
  already serves that purpose well enough.
- core/autoload/packages.el was moved into core-packages.el
- bin/doom will no longer die if DOOMDIR or DOOMLOCALDIR don't have a
  trailing slash
- Introduces doom-debug-variables; a list of variables to toggle on
  doom/toggle-debug-mode.
- The sandbox has been updated to reflect the above changes, also:
  1. Child instances will no longer inherit the process environment of
     the host instance,
  2. It will no longer produce an auto-save-list directory in ~/.emacs.d
2020-05-15 01:33:52 -04:00
chuxubank
8a70dd0379 Change path separator on Windows when using fd
Show slash instead of backslash
2020-05-14 16:07:04 +08:00
Henrik Lissner
29e1398977
Recenter after project search (with counsel) 2020-05-08 16:14:47 -04:00