howm icon indicating copy to clipboard operation
howm copied to clipboard

`r [Update]` Command on Howm Menu only returns error `Not howm-mode`

Open termitereform opened this issue 4 months ago • 7 comments

Hello!

I've been trying out Howm and really liking it. I did have a question about the behavior of one of the menu items.

In the main Howm menu, there's an Update command listed that doesn't seem to work. It seems like it ought to check for updated files, but instead it drops me back to the *scratch* buffer with an error in the echo area that reads Not howm-mode. It leaves the *howmM:%menu%* buffer open, but buried.

This occurs both in my default config, and with emacs -Q and manually loading the library. It occurs on Windows, Ubuntu in WSL, and macOS.

Inspecting what the default key (r) is bound to returns:

r runs the command (lambda (arg) (interactive "P") (let ((pos #<marker at 234
in *howmM:%menu%*>)) (if nil (goto-char pos) (save-excursion (goto-char pos)
(let ((case-fold-search nil)) (when (null (action-lock-get-action))
(action-lock-goto-next-link)) (action-lock-invoke arg)))))) (found in
howm-menu-mode-local-map), which is an interactive Lisp function.

And the debug-on-error backtrace reports:

Debugger entered--Lisp error: (error "Not howm-mode")
  error("Not howm-mode")
  howm-initialize-buffer()
  apply(howm-initialize-buffer nil)
  (progn (switch-to-buffer prev) (apply #'howm-initialize-buffer nil))
  (let ((a nil) (cur (current-buffer)) (prev (if (howm-buffer-alive-p howm-menu-previous-buffer) howm-menu-previous-buffer (current-buffer)))) (progn (switch-to-buffer prev) (apply #'howm-initialize-buffer nil)))
  (lambda (&optional howm-menu-action-arg-name) (let ((a nil) (cur (current-buffer)) (prev (if (howm-buffer-alive-p howm-menu-previous-buffer) howm-menu-previous-buffer (current-buffer)))) (progn (switch-to-buffer prev) (apply #'howm-initialize-buffer nil))))(nil)
  action-lock-invoke(nil)
  (let ((case-fold-search nil)) (when (null (action-lock-get-action)) (action-lock-goto-next-link)) (action-lock-invoke arg))
  (save-excursion (goto-char pos) (let ((case-fold-search nil)) (when (null (action-lock-get-action)) (action-lock-goto-next-link)) (action-lock-invoke arg)))
  (if nil (goto-char pos) (save-excursion (goto-char pos) (let ((case-fold-search nil)) (when (null (action-lock-get-action)) (action-lock-goto-next-link)) (action-lock-invoke arg))))
  (let ((pos #<marker at 234 in *howmM:%menu%*>)) (if nil (goto-char pos) (save-excursion (goto-char pos) (let ((case-fold-search nil)) (when (null (action-lock-get-action)) (action-lock-goto-next-link)) (action-lock-invoke arg)))))
  (lambda (arg) (interactive "P") (let ((pos #<marker at 234 in *howmM:%menu%*>)) (if nil (goto-char pos) (save-excursion (goto-char pos) (let ((case-fold-search nil)) (when (null ...) (action-lock-goto-next-link)) (action-lock-invoke arg))))))(nil)
  funcall-interactively((lambda (arg) (interactive "P") (let ((pos #<marker at 234 in *howmM:%menu%*>)) (if nil (goto-char pos) (save-excursion (goto-char pos) (let ((case-fold-search nil)) (when (null ...) (action-lock-goto-next-link)) (action-lock-invoke arg)))))) nil)
  command-execute((lambda (arg) (interactive "P") (let ((pos #<marker at 234 in *howmM:%menu%*>)) (if nil (goto-char pos) (save-excursion (goto-char pos) (let ((case-fold-search nil)) (when (null ...) (action-lock-goto-next-link)) (action-lock-invoke arg)))))))

termitereform avatar Sep 24 '24 15:09 termitereform