The same as 7d617f15, but for ivy:
+ Heavily refactored +ivy-file-search
+ Removed -z flag from all engines by default
+ Changed the behavior of the universal argument for from-cwd
interactive commands (e.g. +ivy/rg-from-cwd). It used to enable
recursive searches, but now enables inclusion of hidden and compressed
files in the search instead. *-from-cwd searches are always recursive
now.
+ Now generates +ivy/X and +ivy/X-from-cwd commands dynamically.
+ Split +ivy/project-search into +ivy/project-search-from-cwd.
Universal arguments are passed from these commands to their delegated
engine command.
+ Heavily refactored +helm-file-search
+ Removed -z flag from all engines by default
+ Changed the behavior of the universal argument for from-cwd
interactive commands (e.g. +helm/rg-from-cwd). It used to enable
recursive searches, but now enables inclusion of hidden and compressed
files in the search instead. *-from-cwd searches are always recursive
now.
+ Now generates +helm/X and +helm/X-from-cwd commands dynamically.
+ Split +helm/project-search into +helm/project-search-from-cwd.
Universal arguments are passed from these commands to their delegated
engine command.
+ Rename +helm/persp-buffer-list to +helm/workspace-buffer-list
+ Silence compiler warnings when feature/workspaces is disabled
+ Throw error if feature/workspaces is disabled and these commands are
called.
With (helm +childframe) in doom! section, without this patch
execute-persistent-action opens an extra non-child frame. This
doesn't play nicely with my tiling window manager.
This patch is taken from helm-posframe, and seems to fix it.
counsel-projectile-find-file has other capabilities (like actions and
sorting). So we conditionally use projectile-find-file only if the
project is large enough to warrant it.
counsel-projectile-find-file fontifies visited files and sorts the
resulting file list from projectile-find-file, adding considerable
overhead. Then, ivy-prescient performs a frecency sort and filter,
adding more overhead.
Altogether, this makes projectile-find-file unusable for larger projects
when fuzzy search is on (and in some extreme cases, when it's off). This
change disables both features specifically for projectile-find-file.
Fixes#774, hopefully
This occurs when invoking it from the root of massive file trees, like
$HOME or certain non-project folders. It's better that it defer to a
different command altogether (counsel-find-file) if invoked from $HOME,
and counsel-file-jump from anywhere else, which offers approximately
what we want, but at a fraction of the performance cost in those cases.
Company backends are now built from an alist (+company-backend-alist),
which can be manipulated through set-company-backend!. Backends can now
be set to all children of a parent mode (text-mode, prog-mode, etc),
like so:
(set-company-backend! :derived 'text-mode 'company-dabbrev)
or only for an exact major-mode:
(set-company-backend! 'markdown-mode 'company-dabbrev-code)
Backends cascade. So combining the two examples above will cause
company-backends in a markdown-buffer (which is derived from text-mode)
to be (company-dabbrev-code company-dabbrev).