Commit Graph

457 Commits

Author SHA1 Message Date
a201409fdd Minor refactors across the board 2019-07-10 21:27:12 +02:00
683683736d Cancel previous company popup when invoking another
Enables uses to switch between backends, e.g. C-x C-s followed by C-x
C-n in insert mode.
2019-07-09 16:12:44 +02:00
563629cbd3 Remove unneeded autoloads 2019-07-06 23:22:27 +02:00
750f45328a Mark helm/ivy search engine autoloads interactive
Otherwise they don't show up in M-x
2019-07-02 23:17:19 +02:00
9a8faf1df3 completion/ivy: don't ignore order in file search 2019-07-02 13:12:21 +02:00
281ea56643 completion/company: refactor backend resolution
Makes it easier to change company-backends retrospectively (with a hook
or setq-hook!). Also simplifies how backend defaults are stored (no more
of this :derived and :exact business).

Also updates unit tests.
2019-06-29 01:39:23 +02:00
9a02bd8ac8 Minor refactors across the board
- when-let* -> when-let
- Fix projectile-locate-dominating-file for connected remote files
2019-06-26 14:31:06 +02:00
b5c5b7f10d Move posframe+persp-mode fix to ui/workspaces 2019-06-26 14:31:06 +02:00
86ebe08593 Show dirname in ivy-switch-buffer #1506
Makes buffer names more readable in case uniquify-buffer-name-style is
nil (which is necessary to work around a limitation of persp-mode).
2019-06-26 14:28:40 +02:00
0a7221798b Start file searchs from basic sh/dash shell
Uses the most basic, uncustomized shell to a) prevent interference
caused by slow shell configs and b) speed up project text searches. This
comes at the cost of isolating these programs from envvars that the user
may have set in their shell configs in order to change
ag/rg/pt/git-grep/grep's behavior.

If this bothers you, change +ivy-file-search-shell to your shell (or
to the value of `shell-file-name`).

Possibly relevant to an issue mentioned in #1260
2019-06-17 15:10:55 +02:00
76143d5a51 Escape pipes in selection for rg project searches
Pipes need to be double-escaped, because they're meaningful to both ivy
and ripgrep, and searches conducted on a selection need to be literal.
2019-06-16 23:04:39 +02:00
e4c8beec68 completion/ivy: update keybinds in README #1491 2019-06-14 12:42:29 +02:00
33ae889e39 Enable evil-collection-ivy 2019-06-14 11:05:54 +02:00
6f3c1c6d00 Fix how project search escapes spaces #1487
When invoking project search (via SPC / p) with an active selection.
2019-06-13 09:37:01 +02:00
4ef345fe50 Fix how project search escapes regexps #1486
When invoking project search (via SPC / p) with an active selection, the
selection is captured and escaped, but was escaped incorrectly.
2019-06-12 20:17:47 +02:00
b1ecd68381 completion/ivy: fix +fuzzy & +prescient
Causd by ivy-re-builders-alist overwriting their modifications.
2019-06-11 18:11:51 +02:00
750d7629e1 Fix {git-,}grep backends for project search #1479 2019-06-10 16:04:48 +02:00
766fc3e4a9 completion/ivy: inhibit ivy completion in evil-ex
`ivy-completion-in-region' struggles with completing certain
+evil-ex-specific constructs, like globs (:e prefix*.el) or vim filename
modifiers (:e %:p:h).
2019-06-10 09:38:56 +02:00
1de21f57eb completion/ivy: use ivy--regex-ignore-order 2019-06-10 09:38:55 +02:00
761bc570aa completion/ivy: ivy-posframe upstream update 2019-06-04 00:01:28 +02:00
9f4352006f Increase ivy-flx-limit for improved fuzzy behavior
The default setting of 200 is too low for common use-cases like
`describe-function`, `describe-variable` or `counsel-projectile`.

This has a performance impact, but it's barely noticeable on a fast
machine. If performance is not acceptable, set `ivy-flx-limit` lower or
consider disabling the `+fuzzy` feature entirely.
2019-05-29 00:46:57 +10:00
2a511a6576 Add +prescient option for :completion ivy
This provides an alternative backend for filtering and sorting ivy
searches. Uses prescient instead of flx for fuzzy completion when both
+prescient and +fuzzy are selected.
2019-05-29 00:46:57 +10:00
2f569eda51 Silence malformed function warnings from ivy-hydra 2019-05-21 00:30:42 -04:00
fe36bbca1f Standardize C-c C-e for ivy wgrep
Removes backtab in favor of standardizing C-c C-e. Already used by helm,
wgrep and dired.
2019-05-21 00:30:42 -04:00
9d5e8fdda4 completion/helm: use ;;;###package cookies 2019-05-20 21:09:11 -04:00
a7069b93f2 Remove vestigial imenu-anywhere remappings 2019-05-20 21:09:10 -04:00
d3cb394ce4 Refactor +ivy/tasks
Just realized ivy passes the candidate in its original data structure to
its handlers.
2019-05-19 02:18:26 -04:00
39d4fa2256 Improve better-jumper integration into ivy
And remove unnecessary set-jump on imenu-after-jump-hook (it should
happen before the jump, not after).
2019-05-19 02:18:26 -04:00
c4a5a1b007 Remove redundant +ivy--switch-buffer transformer
Mentioned in #1408
2019-05-14 10:12:37 -04:00
2fa2639d64 Add value column to {describe,helpful}-variable 2019-05-14 10:06:36 -04:00
876e2a250f Fix ivy-switch-buffer virtual buffer support 2019-05-13 23:45:21 +10:00
04acb8fa98 completion/company: +auto by default
Questions regarding "completion not working" are very common, so the
+auto flag has been removed and idle completion enabled by default.
2019-05-04 19:13:25 -04:00
952a86c2e5 completion/company: revise idle completion in docs 2019-05-01 21:02:29 -04:00
9cdd5b2f99 Fixes for ivy-switch-buffer icons
Corrects the ivy-switch-buffer transformer to use buffer icons (not file
icons), and fixes alignment issues in the icon display.
2019-04-27 00:14:53 +10:00
1911f44e66 completion/ivy: add +icons flag
This replaces +ivy-buffer-icons.

Renders #1362 unnecessary.
2019-04-25 22:20:31 -04:00
a4c5396558 Add better-jumper
Replaces evil's jumplist; makes its functionality available for non evil
users.
2019-04-24 18:16:04 -04: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
b0d8a4f548 Merge pull request #1336 from thiagokokada/document-company-tng
Document company +tng flag
2019-04-20 19:20:31 -04:00
7e7d6ae5a2 Fix hydra-ivy keybind on M-o #1342 2019-04-20 02:18:49 -04:00
0beb194e23 Document company +tng flag 2019-04-18 00:23:07 -03:00
0f8baf3f3e Minor comment tweaks 2019-04-17 11:19:37 -04:00
0ea0486d5f Merge pull request #1331 from flatwhatson/swiper-isearch-flx
Disable fuzzy-matching for swiper-isearch
2019-04-16 15:04:44 -04:00
ee11262aca Fix wrong-number-of-args in project-search-from-cwd 2019-04-17 00:32:35 +10:00
e3cd82016e Disable fuzzy-matching for swiper-isearch 2019-04-16 11:07:06 +10:00
b6611d215f Fix wrong-num-of-args error on SPC *
Adds QUERY and DIRECTORY args to +{ivy,helm}/project-search
2019-04-14 13:39:30 -04:00
3c01de8876 Fix #1320: generalize SPC *
Was formerly using ripgrep, and only ripgrep.
2019-04-10 20:14:50 -04:00
3ef2abfb22 Improve ivy-switch-buffer transformer
- Highlights remote/tramp files with ivy-remote face
- Highlights non-file-visiting buffers with ivy-subdir face
- Highlight modified buffers with ivy-modified-buffer face
- Disable built-in ivy-switch-buffer transformer (redundant with our own
  transformer)
2019-04-10 19:24:17 -04:00
f9b6f6746f General, minor refactor/reformatting 2019-04-08 23:03:19 -04:00
a4283427f5 Fix autoloaded hydras
They weren't marked as interactive, making them unavailable for `M-x` or
keybinds.
2019-04-07 16:06:52 -04:00
00bb00649b Fix #1065: add +ivy-buffer-unreal-face option 2019-04-07 15:55:45 -04:00