-
-
Notifications
You must be signed in to change notification settings - Fork 392
- Where is Helm documentation?
- Why does MELPA update give errors?
- Why is calling
helm-M-x
with a prefix argument giving an error? - How do I get Helm and Popwin to play nice?
- What happened to the
grep
andmulti-occur
commands? - Why can’t I exit
completing-read
with an empty string? - Why am I getting warnings when compiling with emacs-24.3.1?
- Why is
function-put
void? - Why is a customizable Helm source
nil
? - Why did the debugger enter Lisp error
(void-variable \.\.\.)
when using session.el? - Why
helm-mode
is so long to startup?
Hit “C-h m” within a Helm session, or use the “helm-documentation” command.
A tip to hit C-h m
within a Helm session can be found on the mode line. All help pages are grouped in a Org file generated by the command helm-documentation
.
You should not encounter this problem anymore.
Helm, when installed from (M)ELPA, specifies a dependency on emacs-async, which should resolve this problem. If it does happen, however, do the following:
- Uninstall
helm
andasync
withpackage-list-packages
. - Close Emacs
- Start
emacs -Q
. - Reinstall
helm
frompackage-list-packages
. - Restart Emacs
If problem persists, report an issue.
- After upgrading (helm or whatever), you will have to restart emacs (expect problems otherwise).
- emacs-async is available as async in MELPA.
- Async compilation of packages can be disabled per package or globally in
async-bytecomp.el
. If you do so, don’t complain if you have errors after upgrading Helm or Helm modules.
Use prefix args after starting helm-M-x, not before.
Read the Helm documentation (helm-documentation
, bound by default to <helm-prefix> h h
).
Also see Uncyclo page for helm-M-x
.
See the wiki page on working with Popwin.
They have been removed due to redundancy.
The grep
(helm-do-grep
, helm-do-zgrep
, helm-do-pdfgrep
) and multi-occur
(helm-multi-occur
) commands
got removed because they were unuseful as you can use them from helm-find-files
and file-related commands (e.g. helm-locate
).
So now if you want to run helm grep, start helm-find-files
, choose you files and hit C-s
.
The only difference now is that you hit C-s
instead of RET
. Not the end of the world!
Hit C-RET or M-RET.
This can be seen in the mode line.
Don’t be afraid, just ignore them ;-).
Helm has no warnings when compiling with emacs-24.4 or later. When compiling with 24.3, you may have many warnings (due to bugs in Emacs itself related to lexical binding and EIEIO).
Reinstall Helm.
This is due to a bad installation of Helm (see here).
If the source is nil
, it is probably set up when command starts, and may be defined using helm-make-source
with a specialized class.
If the source is defined with a specialized class (not a generic class like helm-source-sync
, helm-source-async
, helm-source-in-buffer
, helm-source-dummy
, etc.), you can add a new defmethod
in your init file like:
(defmethod helm-setup-user-source ((source helm-source-ffiles))
(helm-source-add-action-to-source-if
"Byte compile file(s) async"
'async-byte-compile-file
source
'helm-ff-candidates-lisp-p))
or
(defmethod helm-setup-user-source ((source helm-source-multi-occur))
(oset source :follow 1))
You can also set up the source yourself:
(with-eval-after-load "helm-regexp.el"
(setq helm-source-occur (helm-make-source "Occur" 'helm-source-multi-occur))
(setq helm-source-moccur (helm-make-source "Moccur" 'helm-source-multi-occur)))
- Don’t define a new
defmethod
helm-setup-user-source
with generic classes as specified above.
May be due to using session.el.
See here for how to fix this.
See Issue 1000.