tmalsburg/helm-bibtex

helm-resume not working ?

Closed this issue · 7 comments

Using M-x helm-resume with helm-bibtex used to work for me. It broke a few months ago, not sure what was upgraded. I have the latest helm-bibtex installed now. The error message is: "Symbol's value as variable is void: helm-marked-buffer-name". Is this a standard, ie. the instructions in the helm-bibtex README are no longer accurate ? Or perhaps it's something in my configuration.

It works fine for me (Emacs 28 native-comp, with helm installed from MELPA). Perhaps some stale .elc files? A minimal reproducible example would help.

By the way, if helm-resume is generally broken, i.e. also for other helm-sources apart from helm-bibtex, it's more likely that the issue is related to the helm framework than to helm-bibtex which is just using this helm facility.

I never use helm for anything else. But, just now I tried helm-occur and helm-M-x. Doing helm-resume after either one of these did resume as expected. So far, then, it is only helm-bibtex. Doesn't seem to be elc files, i removed those.

  • emacs 27.1 , arch linux
  • helm-bibtex-20200429.1606
  • helm-20201117.815
  • bibtex-completion-20200908.1017

Hmm. I just did package-refresh-contents and updated to a newer helm, removed obsolete packages.This is what I see.

  helm               20201212.627  installed             Helm is an Emacs incremental and narrowing framework
  helm-bibtex        20200429.1606 installed             A bibliography manager based on Helm
  helm-core          20201202.907  installed             Development files for Helm

I'm still seeing "Symbol's value as variable is void: helm-marked-buffer-name".
Curious. I'll have to do some more digging.

Interesting. Though, I still believe that it's not related to helm-bibtex specifically since there's really no resume-related code whatsoever in helm-bitex. The feature is 100% inherited from helm. Helm is pretty complex and one thing that sometimes causes problems is when helm is not correctly initialized. The procedure for that changed over time but here's what currently works for me:

(require 'helm-config)
(require 'helm-global-bindings)

These lines need to be evaluated (I think) before helm-bibtex is loaded and configured. By the way, I only load helm, not helm-core, not sure whether that's relevant

If the info above doesn't help, I'm afraid I'm running out of ideas and would need a reproducible example.

I noticed that helm-bibtex doesn't need to do anything to support resume.
I tried adding those two requires and making sure they happen before helm-bibtex (which is autoloaded on demand).
It did not help. I can't find any suspect helm code in my init.el

However, I found just now that doing helm-mode which enables some kind of helm everywhere behavior does fix resume with helm-bibtex. Don't know yet why. Thanks for looking into it.

Strange. I'm not using helm-mode and resume works fine. One last idea: seeing that helm-marked-buffer-name' is defined in helm-files.el, you could try adding (require 'helm-files)` to your helm config. It shouldn't be necessary but ...

try adding (require 'helm-files)` to your helm config

That solved the problem! Shouldn't be necessary, but it's close to minimal anyway.

Thanks for reporting. I now require helm-files in helm-bitex.el (see 1bb81d7).