For `helm` users, we set `xref-show-xrefs-function` according to Emacs version.
This is a two-fold unnecessity:
- We now only support Emacs version > 27, so `hellm-xref-show-xrefs` should not
be used anyway.
- `hem-xref` already set this variable according to Emacs version. See
[here][ref].
This commit removes this.
ref: ea0e4ed8a9/helm-xref.el (L192-L197)
This variable caused Spacemacs to set all helm sources
to use fuzzy matching independently of whether this
was supported by the source.
This handling was very dangerous as using fuzzy for an
incompatible source can have all kind of side effects
causing unique bugs which will never be fixed by the
source package authors.
Therefore I have changed the implementation to
activate fuzzy matching via helm variables instead,
which should make sure we only activate this for
compatible sources.
If sources are found which do not longer do
fuzzy matching, the individual source should be
improved to support this feature and declare it's
compatibility towards helm.
We cannot fix helm in Spacemacs, instead the respective
package must be patched. Everything else is a maintenance
nightmare!
Fixes#15124
The script used to identify and update the change is added into the GitHub
workflows script directory. A workflow action can be created to trigger the
script to update the headers on the first of every new year. Possibly a task for
a consequent PR.
* Fix function quote warning
Change `'` to `#'`, resolves#15443.
* Fix quoting in `helm-spacemacs-help.el`, add docstrings, fix action
These changes hopefully fix#15443
- Add docstrings to the lambdas
- Change selected action for `<S-return>` to the sixth action, to install the
layer. This change makes the action conform to the removed comment.
> `;; Add layer`
* squash! Fix function quote warning, fix helm action
- Resolve#15443
- Add docstrings to lambdas
- Fix index of helm action for layer install (the actions are zero-indexed)
Built on consult embark orderless selectrum/vertico.
It's been working ok. Basic features are in, let's merge it and let our community
improve it togegher :)
Remove `C-o` keybinding from helm-bookmarks.
Add `S-RET` keybinding to open file/buffer/bookmark in other window for
helm-files helm-buffers and helm-bookmarks.
Advantage: Consistent behavior. It is pretty cumbersome to use the persistent
action provided by helm to open files/buffers/bookmarks in the other window.
problem:
The spacemacs-completion layer defines the variable:
helm-use-fuzzy
But the spacemacs-base distribution doesn't use the
spacemacs-completion layer by default.
helm-use-fuzzy is used in the helm layer.
When a helm buffer is opened, for example: `SPC SPC`
Then a warnings buffer opens:
>Error (use-package): helm/:config: Symbol’s value as variable is void: helm-use-fuzzy
solution:
Make sure that helm-use-fuzzy is bound and true.
Currently 'helm-ag-mode-jump-other-window is bound both to RET and to C-o (its
original default binding), while 'helm-ag-mode-jump isn't bound at all (its
original default binding is RET). This commit removes our customization so that
both 'helm-ag-mode-jump-other-window and 'helm-ag-mode-jump have bindings in the
mode.
The same change is also made for the analogous helm-grep functions, for the same
reason.
* Added `helm-ag-success-exit-status` when using `rg`
It's been advised by the upstream of `helm-ag` to set
`helm-ag-success-exit-status` to `'(0 2)`.
This commit adds this.
ref: https://github.com/emacsorphanage/helm-ag#helm-agel-with-other-searching-tools
Signed-off-by: Lucius Hu <lebensterben@users.noreply.github.com>
* Use `magit-status-setup-buffer` instead of `vcr-dir`
This is suggested by the package itself.
Ref: 4da1a53f2f/helm-ls-git.el (L184-L189)
Co-authored-by: Lucius Hu <lebensterben@users.noreply.github.com>
Following the advice from duianto #13100 we are
setting completion-styles for helm-M-x to include
the emacs version specific fuzzy strategy as last
resort.
Before no fuzzy matching occured within command
searches.
The function: helm-org-get-candidates was removed upstream.
Improvements:
Recenter the target candidate.
Reversed the helm headings list, to match the order of the
questions in FAQ.org, so that the Common questions are
listed first.
Removed the : (colon) after the heading: How do I
in FAQ.org, to match the other parent headings.
If a user uses ripgrep persistent configuration file that sets options
helm overrides the argument parser for ripgrep might incorrectly parse
the command line used by helm.
The problem is encountered whenever an argument option occurs multiple
times and the last one is of this form: '--arg value' or '-a v'. If that
last argument is followed by the positional argument (input) then its
value will be treated as the input resulting in error due to too many
positional arguments.
In other worlds, this would fail to be parsed correctly:
rg --max-columns=10 --max-columns 20 input
rg --max-columns 10 --max-columns 20 input
While this works as expected:
rg --max-columns=10 --max-columns=20 input
rg --max-columns 10 --max-columns=20 input
The solution would be to use arguments in the form of '--arg=value'
which will never be treated as a positional argument.
Fixes#10953
Fixes#11878
The issue seems to have been caused by helm making sure that
the functions that are called with: helm-exit-and-execute-action
are actions.
Ensure action is available before running it
d6dfb8f1e3
Helm:
SPC C l calls helm-colors
SPC h d F calls spacemacs/helm-faces
Ivy:
SPC C e calls counsel-colors-emacs
SPC C f calls counsel-colors-faces
SPC C w calls counsel-colors-web
SPC h d F calls counsel-describe-face
Thanks Miciah for the SPC h d F suggestion.
The newly introduced function to compile an elpa package
was very much redundant with the existing recompile-elpa function.
I have adapted recompile-elpa so that it can be used for the helm action too.
In addition I have bound recompile-elpa to `SPC c C-c` to allow users to
easily recompile their entire elpa directory if the need arises.
I have also removed the error handling in the helm action in favor of
standard error reporting via the *Compile-Log* buffer.
How to use: `SCP h p` select package then `F3` or `C-z` and choose `Recompile`
Motivation: Some packages when compiling need other packages to be loaded first.
The pacakage maintainers should make sure of this requirement but sommetimes
they don't. It also doesn't help when Spacemacs is lazy loading and compiles
updated pacakges on startup. So the manual fix for this problem is recompile the
package once Spacemacs has fully loaded. This requires user go to the package
install location to delete elc files and then do a `spacemacs/recompile-elpa`.
This commit will do that chore for them.
This will make fixing the problem with `org-plus-contrib` or `dumb-jump` update
every now and then easier.
helm-xref currently provides two functions and the user is expected
to use the correct one based on their emacs version. The lazy loading
logic has to be updated to set the correct xref-show-xrefs-function.