I've bound C-c C-f to helm-find-files. Since I am still getting used to helm, when looking at a file listing, I instinctively invoke C-s (which starts helm grep in a helm session but starts search in dired-mode) to let me type part of the desired filename to bring the mark to the desired file. I know that I should instead simply start typing to do so instead of pressing C-s.

But once I've entered helm grep, I don't know how to leave it other than C-g, which drops me out of helm. I'd like to simply return to the helm find files screen, since I may have navigated to a different directory, but I haven't found the key combination to do so. Resuming helm (helm-resume) after quitting just brings me to the helm grep screen.

  • C-x C-f (helm-quit-and-find-file) is designed for this purpose, however, it's buggy.
    – xuchunyang
    Jun 28, 2016 at 17:19
  • Helm's documentation is incomplete in such respects. It does not use the native info system, has a weird interface that is hard to discover. It is non-standard in many respects, not just C-s stumbling block.
    – Emacs User
    Jun 28, 2016 at 17:24
  • wrong type argument: stringp, nil for C-x C-f. I did change helm prefix to C-c h, but I don't think that matters here.
    – bernie
    Jun 28, 2016 at 17:27
  • @lefenzy I fixed that bug a few hours ago (I hope), you can update your helm and try again. C-x C-f is the right answer.
    – xuchunyang
    Jun 29, 2016 at 12:20

2 Answers 2


I have helm-resume bounded to C-x C-b.

To see all helm buffers I just pass it the universal argument C-u C-x C-b. I can then pick the one that I want.

  • Isn't C-x C-b the command list-buffers though? Funnily enough I can't call helm-resume using M-x because I've bound M-x to helm-M-x and it states I'm trying to start a helm session within a helm session. C-u C-x C-b does work although it is a bit cumbersome
    – bernie
    Jun 28, 2016 at 17:31
  • Yeah, but since I use helm, I don't want to use list-buffers anymore. Just bind helm-resume to something and use the universal argument. Try C-u C-c h b.
    – caisah
    Jun 28, 2016 at 17:35
  • The thing is, I don't think helm-resume works because either I am already in the helm session or it just resumes back to the helm grep session. Your second suggestion of C-x C-b to list helm sessions works (universal argument seemingly not needed). Thanks.
    – bernie
    Jun 28, 2016 at 17:46
  • If you exit first with C-g, then you can use the universal argument.
    – caisah
    Jun 28, 2016 at 19:55
  • Right. To clarify, C-x C-b (universal argument not needed), which I have not modified in my configuration, invokes helm-resume-list-buffers-after-quit when in a helm session and list-buffers when not in a helm session. Helm-prefix, which I've bound to C-c h, followed by b resumes the helm session after a C-g.
    – bernie
    Jun 29, 2016 at 17:00

C-x C-f (helm-quit-and-find-file) within any helm command will bring you to helm-find-files.

  • Yes "wrong type argument: stringp, nil" bug is fixed in "20160629.116" helm pacakge on melpa. Thanks
    – bernie
    Jun 29, 2016 at 17:02
  • But I guess that C-x C-b while within helm is the universal answer for exiting helm grep and returning to whatever helm buffer you were in previously however, since launching helm grep is possible from various types of helm buffers.
    – bernie
    Jun 29, 2016 at 17:05
  • @lefenzy I agree. I upvoted the current accepted answer.
    – xuchunyang
    Jun 29, 2016 at 18:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.