Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

evil-collection-mu4e update required #695

Closed
theophilusx opened this issue Dec 15, 2022 · 22 comments
Closed

evil-collection-mu4e update required #695

theophilusx opened this issue Dec 15, 2022 · 22 comments

Comments

@theophilusx
Copy link
Contributor

There are some changes in the development version of mu4e which break evil-collection-mu4e.el In particular, the function, mu4eview-quit-buffer no longer exists. This means that mu4e-view-mode-map entry for 'q' needs to be changed. Instead of binding q to mu4eview-quit-buffer, I found binding to quit-window works.

Note that this only affect the current 1.9.x version (1.9.7 specifically). It does not affect earlier versions of mu4e.

As it stands now, when the user hits q to leave the view buffer (mu4e-article window), an error is thrown - wrong argument commandp as the function mu4e~viewquit-buffer does not exist.

@theophilusx
Copy link
Contributor Author

There have been even more significant refactoring of mu4e which has now completely broken the evil-colleciton mu4e module for mu4e version 1.9.14. In particular, the code which updated the mu4e main 'menu' screen so that the key bindings reflect the new evil bindings is now broken because the way the data in that screen is being generated has been completely re-factored.

The bad news is the existing evil-collection code in the mu4e module will need complete re-working. The good news is that this could be cleaner and easier given the refactoring which has been done in mu4e.

The challenge will be in keeping compatibility with the 1.8.x (release) branch, which still uses the older code.

The quick and dirty fix I've used was to just comment out the add-hook call which adds the function that updates the main screen. I don't care if it shows the wrong key bindings as I don't actually use that information anyway.

@jojojames
Copy link
Collaborator

We'll need a volunteer for someone to update mu4e as both I and @condy0919 don't use mu4e anymore/ever.

@theophilusx
Copy link
Contributor Author

theophilusx commented Feb 20, 2023 via email

@meliache
Copy link
Contributor

meliache commented Mar 20, 2023

The fix provided by @theophilusx works well for me without modifications on the latest git build for mu4e 1.9.8 👍 .

Once things settle and assuming I can find the time, I will submit a
PR. However, that may be a ways off.

From the mailing list it appears like a new stable release is just a couple of weeks away, see Towards 1.10. I would still wait until the next stable release is actually out, but I'd advice to be prepared to make a PR once it is.

I'm on the development branch of mu4e and am currently using my personal fork of evil-collection where I just replaced the evil-collection mu4e module with the above code by @theophilusx , see the mu4e-development branch at https://github.com/meliache/evil-collection/tree/mu4e-development. The branch is not meant for a PR but for personal use. After the next stable release of mu4e I would wait if @theophilusx does a PR, as he authered the code, but if he doesn't I could also do it.

If we make a PR, a question would be whether we want to support multiple versions, as e.g. some linux distributions might take a while to update their mu4e version. We could do a version check and load an evil mu4e-module based on the release.

Though I think it might be better to keep things simple an just update the module to the latest recommended mu4e version, and get rid of all main menu modifications code, as it's complex and not needed anymore since 1.9. We might still support some keybindings for old mu4e versions, e.g. change which function is called by a binding depending on the version. But personally I think it's fine if the main menu isn't adapted for the old 1.8 versions, in my opinion that's not essential for mu4e to be usable and eventually users should update.

@condy0919
Copy link
Collaborator

👍

@abougouffa
Copy link
Contributor

abougouffa commented Mar 26, 2023

After today's release of mu/mu4e 1.10, evil-collection-mu4e completely broke my config.

I've disabled the evil-collection-mu4e-update-main-view hook, as it seems to be the main reason. There are also some obsolete keybindings (like mu4e~view-quit-buffer) which needs to be updated.

@johnhamelink
Copy link

johnhamelink commented Mar 26, 2023

I found I had to mock the function mu4e--main-action-str to get to the point where I had an issue related to evil-collection-mu4e-update-main-view.

I just did this:

(use-package mu4e
  :init

  (defun mu4e--main-action-str (name func)
    "This seems to be needed until evil-collection supports the latest
  version of mu4e."
    "mu4e-main-action")

  (require 'mu4e)

  (remove-hook 'mu4e-main-mode-hook 'evil-collection-mu4e-update-main-view)

  ;; etc.

@Jousimies
Copy link

Wait for update, totally delete evil-collection-mu4e currently.

@tshu-w
Copy link
Contributor

tshu-w commented Mar 27, 2023

Just need to override evil-collection-mu4e-update-main-view without requiring mu4e:

  (defun mu4e--main-action-str (str &optional func-or-shortcut))
  (defun evil-collection-mu4e-update-main-view@override())
  (advice-add 'evil-collection-mu4e-update-main-view :override #'evil-collection-mu4e-update-main-view@override)

@theophilusx
Copy link
Contributor Author

theophilusx commented Mar 27, 2023 via email

@jojojames
Copy link
Collaborator

Once things settle and assuming I can find the time, I will submit a
PR. However, that may be a ways off.

Feel free to submit a PR earlier and help everyone. There might be a lot of churn (additional PRs required) but I'll be happy to pull them in as is. I don't really have opinions on the mu4e bindings at the moment since I don't use it.

@meliache
Copy link
Contributor

meliache commented Apr 3, 2023

I opened the PR #720 with the changes from @theophilusx . It's still very raw, I didn't work on backwards-compatibility, and there is key overlap due to the new menu for toggling threading/duplicates/related. So help welcome. But I thought better start the PR than just discuss.

@hokomo
Copy link
Contributor

hokomo commented Apr 10, 2023

I think the main issue that has to be resolved is to decide on the backwards compatibility strategy -- do we want to maintain backwards compatibility, and if so, how do we do it?

I've opened #672 before to fix evil-collection for mu/mu4e 1.6.x., and have asked (#672 (comment)) whether adding version checks would be worthwhile.

Shortly after, I upgraded to mu/mu4e 1.8.x and most of the issues I had went away as the then-current version of evil-collection was mostly tracking 1.8.x anyway. I still discovered a few minor issues for which I had opened #675. Those fixes are still relevant and could be merged depending on how we decide to go about backwards compatibility.

Since mu4e is maintained and packaged together with mu itself, upgrading mu4e necessarily means upgrading mu as well, which depending on your distro might or might not be a simple thing to do. This is the main reason why backwards compatibility would be useful, rather than just tracking the latest version of mu/mu4e (which users might have to then install from source manually).

@jojojames mentioned creating a separate file for different versions of mu/mu4e (#720 (comment)) to handle backwards compatibility. Another option are explicit version checks (within a single file) that I mentioned before. I'm honestly not sure which is preferable -- perhaps it depends on how big the changes are between the versions? Automatically detecting the version and choosing the appropriate configuration would be a convenient thing to do in any case (i.e. even in the one-file-per-version case).

If we decide to be backwards-compatible (which I think would be useful), we should probably just concentrate on starting with 1.8.x, as it has been the stable release for a while now.

@bergheim
Copy link

This is great. The separate file approach without a lot of version logic branching will be the cleanest and easiest to follow solution I think. Also, later changes that only affect new versions would not require any testing on older versions, as that file would be left alone.

milanglacier pushed a commit to milanglacier/evil-collection that referenced this issue Apr 23, 2023
jojojames pushed a commit that referenced this issue Apr 30, 2023
Changes taken from Tim Cross <theophilusx@gmail.com> (@theophilusx) in #695 (comment).
@milanglacier
Copy link
Contributor

#729 should fix this issue.

Please leave feedback here about #729 and let's see if there are any other compatibility issue with mu 1.10 or mu 1.8.

@rbocheux
Copy link

@milanglacier something has changed between @meliache branch and this merge, because my key bindings are bypassed.
I use doom emacs, with the bepo layout which rebinds the standard evil keys for the bepo keyboard. It was working correctly when I used @meliache’s branch, but now I have the standard evil key bindings in mu4e like ji to go to INBOX, or j and k to navigate in the mails. So something is bypassing the remapping of the bepo layout. Do you have any ideas of how to fix this ?

@milanglacier
Copy link
Contributor

milanglacier commented May 13, 2023

@milanglacier something has changed between @meliache branch and this merge, because my key bindings are bypassed.
I use doom emacs, with the bepo layout which rebinds the standard evil keys for the bepo keyboard. It was working correctly when I used @meliache’s branch, but now I have the standard evil key bindings in mu4e like ji to go to INBOX, or j and k to navigate in the mails. So something is bypassing the remapping of the bepo layout. Do you have any ideas of how to fix this ?

how about showing the git diff content of the branch you are using that has no conflict with your layout and the master branch?

I have no idea what’s happening here, since I never touched the keybindings code base, especially keybindings like j, i.

@rbocheux
Copy link

Unfortunately, the branch no longer exists. I was using this branch : (package! evil-collection :recipe (:repo "meliache/evil-collection" :branch "mu4e-development"))

I suspect that the current master branch loads the evil keybindings differently, so that the remapping is not effective.

@milanglacier
Copy link
Contributor

milanglacier commented May 13, 2023

Unfortunately, the branch no longer exists. I was using this branch : (package! evil-collection :recipe (:repo "meliache/evil-collection" :branch "mu4e-development"))

I suspect that the current master branch loads the evil keybindings differently, so that the remapping is not effective.

this problem is hard to solve as it is hard to reproduce. Firstly you don’t have the branch anymore and you can’t reproduce the problem; secondly I don’t use bepo layout keyboard.

Have you ever tried “emacs -Q” and only load evil, evil-collection, and mu4e and see if the problem is still there?

@rbocheux
Copy link

rbocheux commented May 13, 2023

this problem is hard to solve as it is hard to reproduce. Firstly you don’t have the branch anymore and you can’t reproduce the problem; secondly I don’t use bepo layout keyboard.

Have you ever tried “emacs -Q” and only load evil, evil-collection, and mu4e and see if the problem is still there?

Well, if I try with "emacs -Q", it won’t load the bepo layout. It is indeed quite hard to reproduce. Maybe @meliache can have an idea because his branch was doing what I expect. With a little luck, he can tell the diff with the current branch.
If not, I will ask the doom devs working on the layout module.

EDIT: I tried to explicitly load evil-collection after evil and mu4e, with this config:

(use-package! evil-collection
  :after evil mu4e
  :config
  (evil-collection-init))

and now I have this error:

evil-collection: error setting key in gnus-summary-mode-map (error "Key sequence T k starts with non-prefix key T")
evil-collection: error setting key in gnus-group-mode-map (error "Key sequence L ! starts with non-prefix key L")

In debug mode, it gives me:

Debugger entered--Lisp error: (error "Key sequence T k starts with non-prefix key T")
  #<subr define-key>((keymap "Auxiliary keymap for Normal state" (119) (201) (233) (200) (232 . gnus-summary-refer-parent-article) (187) (171) (12 keymap (6 . gnus-summary-mail-forward)) (8) (108 keymap (87 . gnus-summary-very-wide-reply-with-original) (119 . gnus-summary-very-wide-reply) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) (105 . gnus-summary-news-other-window) (99 . gnus-summary-mail-other-window)) (72 . gnus-summary-reply-with-original) (104 . gnus-summary-reply) (18) (19 . gnus-summary-prev-article) (20 . gnus-summary-next-article) (75) (107) (106) (83) (115) (116) (76 . gnus-summary-mail-other-window) (73 . gnus-summary-increase-score) (42 . gnus-cache-enter-article) (follow-link . mouse-face) (mouse-2 . gnus-mouse-pick-article) (38 . gnus-summary-execute-command) (66 keymap (112 . gnus-summary-article-posted-p) (116 . gnus-summary-respool-trace) (113 . gnus-summary-respool-query) (119 . gnus-summary-edit-article) (114 . gnus-summary-respool-article) (73 . gnus-summary-create-article) (105 . gnus-summary-import-article) (98 . gnus-summary-crosspost-article) (99 . gnus-summary-copy-article) (109 . gnus-summary-move-article) (100 . gnus-summary-delete-article) (69 . gnus-summary-expire-articles-now) (101 . gnus-summary-expire-articles)) (88 keymap (89 . gnus-uu-decode-yenc) (98 . gnus-uu-decode-binhex) (111 . gnus-uu-decode-save) (80 . gnus-uu-decode-postscript-and-save) (112 . gnus-uu-decode-postscript) (83 . gnus-uu-decode-unshar-and-save) (115 . gnus-uu-decode-unshar) (118 keymap (80 . gnus-uu-decode-postscript-and-save-view) (112 . gnus-uu-decode-postscript-view) (83 . gnus-uu-decode-unshar-and-save-view) (115 . gnus-uu-decode-unshar-view) (85 . gnus-uu-decode-uu-and-save-view) (117 . gnus-uu-decode-uu-view)) (85 . gnus-uu-decode-uu-and-save) (117 . gnus-uu-decode-uu)) (124 . gnus-summary-pipe-output) (79 keymap (80 . gnus-summary-muttprint) (112 . gnus-summary-pipe-output) (118 . gnus-summary-save-article-vm) (104 . gnus-summary-save-article-folder) (98 . gnus-summary-save-article-body-file) (70 . gnus-summary-write-article-file) (102 . gnus-summary-save-article-file) (114 . gnus-summary-save-article-rmail) (109 . gnus-summary-save-article-mail) (111 . gnus-summary-save-article)) (84 . gnus-summary-goto-article) (111 keymap (116 . gnus-summary-sort-by-recipient) (115 . gnus-summary-sort-by-subject) (114 . gnus-summary-sort-by-random) (111 . gnus-summary-sort-by-original) (110 . gnus-summary-sort-by-number) (109 keymap (110 . gnus-summary-sort-by-most-recent-number) (109 . gnus-summary-sort-by-marks) (100 . gnus-summary-sort-by-most-recent-date)) (108 . gnus-summary-sort-by-lines) (105 . gnus-summary-sort-by-score) (100 . gnus-summary-sort-by-date) (99 . gnus-summary-sort-by-chars) (97 . gnus-summary-sort-by-author)) (27 keymap (76) (108) (72 . gnus-summary-repeat-search-article-backward) (104 . gnus-summary-search-article-backward) (75 . gnus-summary-repeat-search-article-forward) (107 . gnus-summary-search-article-forward) (74) (106) (84) (116) (67) (99) (105 . gnus-symbolic-argument) (42 . gnus-cache-remove-article) (38 . gnus-summary-universal-argument) (82) (83) (114) (115) (94 . gnus-summary-refer-article)) (94 . gnus-summary-refer-parent-article) (120 . gnus-summary-limit-to-unread) (69 . gnus-summary-mark-as-expirable) (101 . gnus-summary-edit-article) (74 . gnus-summary-goto-article) (61 . gnus-summary-tick-article-forward) (33 . gnus-summary-mark-as-read-forward) (44 . gnus-summary-best-unread-article) (46 . gnus-summary-first-unread-article) (3 keymap (6 . gnus-summary-mail-forward)) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) ...) "Tk" gnus-summary-kill-thread)
  apply(#<subr define-key> ((keymap "Auxiliary keymap for Normal state" (119) (201) (233) (200) (232 . gnus-summary-refer-parent-article) (187) (171) (12 keymap (6 . gnus-summary-mail-forward)) (8) (108 keymap (87 . gnus-summary-very-wide-reply-with-original) (119 . gnus-summary-very-wide-reply) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) (105 . gnus-summary-news-other-window) (99 . gnus-summary-mail-other-window)) (72 . gnus-summary-reply-with-original) (104 . gnus-summary-reply) (18) (19 . gnus-summary-prev-article) (20 . gnus-summary-next-article) (75) (107) (106) (83) (115) (116) (76 . gnus-summary-mail-other-window) (73 . gnus-summary-increase-score) (42 . gnus-cache-enter-article) (follow-link . mouse-face) (mouse-2 . gnus-mouse-pick-article) (38 . gnus-summary-execute-command) (66 keymap (112 . gnus-summary-article-posted-p) (116 . gnus-summary-respool-trace) (113 . gnus-summary-respool-query) (119 . gnus-summary-edit-article) (114 . gnus-summary-respool-article) (73 . gnus-summary-create-article) (105 . gnus-summary-import-article) (98 . gnus-summary-crosspost-article) (99 . gnus-summary-copy-article) (109 . gnus-summary-move-article) (100 . gnus-summary-delete-article) (69 . gnus-summary-expire-articles-now) (101 . gnus-summary-expire-articles)) (88 keymap (89 . gnus-uu-decode-yenc) (98 . gnus-uu-decode-binhex) (111 . gnus-uu-decode-save) (80 . gnus-uu-decode-postscript-and-save) (112 . gnus-uu-decode-postscript) (83 . gnus-uu-decode-unshar-and-save) (115 . gnus-uu-decode-unshar) (118 keymap (80 . gnus-uu-decode-postscript-and-save-view) (112 . gnus-uu-decode-postscript-view) (83 . gnus-uu-decode-unshar-and-save-view) (115 . gnus-uu-decode-unshar-view) (85 . gnus-uu-decode-uu-and-save-view) (117 . gnus-uu-decode-uu-view)) (85 . gnus-uu-decode-uu-and-save) (117 . gnus-uu-decode-uu)) (124 . gnus-summary-pipe-output) (79 keymap (80 . gnus-summary-muttprint) (112 . gnus-summary-pipe-output) (118 . gnus-summary-save-article-vm) (104 . gnus-summary-save-article-folder) (98 . gnus-summary-save-article-body-file) (70 . gnus-summary-write-article-file) (102 . gnus-summary-save-article-file) (114 . gnus-summary-save-article-rmail) (109 . gnus-summary-save-article-mail) (111 . gnus-summary-save-article)) (84 . gnus-summary-goto-article) (111 keymap (116 . gnus-summary-sort-by-recipient) (115 . gnus-summary-sort-by-subject) (114 . gnus-summary-sort-by-random) (111 . gnus-summary-sort-by-original) (110 . gnus-summary-sort-by-number) (109 keymap (110 . gnus-summary-sort-by-most-recent-number) (109 . gnus-summary-sort-by-marks) (100 . gnus-summary-sort-by-most-recent-date)) (108 . gnus-summary-sort-by-lines) (105 . gnus-summary-sort-by-score) (100 . gnus-summary-sort-by-date) (99 . gnus-summary-sort-by-chars) (97 . gnus-summary-sort-by-author)) (27 keymap (76) (108) (72 . gnus-summary-repeat-search-article-backward) (104 . gnus-summary-search-article-backward) (75 . gnus-summary-repeat-search-article-forward) (107 . gnus-summary-search-article-forward) (74) (106) (84) (116) (67) (99) (105 . gnus-symbolic-argument) (42 . gnus-cache-remove-article) (38 . gnus-summary-universal-argument) (82) (83) (114) (115) (94 . gnus-summary-refer-article)) (94 . gnus-summary-refer-parent-article) (120 . gnus-summary-limit-to-unread) (69 . gnus-summary-mark-as-expirable) (101 . gnus-summary-edit-article) (74 . gnus-summary-goto-article) (61 . gnus-summary-tick-article-forward) (33 . gnus-summary-mark-as-read-forward) (44 . gnus-summary-best-unread-article) (46 . gnus-summary-first-unread-article) (3 keymap (6 . gnus-summary-mail-forward)) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) ...) "Tk" gnus-summary-kill-thread))
  #f(advice-wrapper :filter-args #<subr define-key> explain-pause--wrap-define-key)((keymap "Auxiliary keymap for Normal state" (119) (201) (233) (200) (232 . gnus-summary-refer-parent-article) (187) (171) (12 keymap (6 . gnus-summary-mail-forward)) (8) (108 keymap (87 . gnus-summary-very-wide-reply-with-original) (119 . gnus-summary-very-wide-reply) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) (105 . gnus-summary-news-other-window) (99 . gnus-summary-mail-other-window)) (72 . gnus-summary-reply-with-original) (104 . gnus-summary-reply) (18) (19 . gnus-summary-prev-article) (20 . gnus-summary-next-article) (75) (107) (106) (83) (115) (116) (76 . gnus-summary-mail-other-window) (73 . gnus-summary-increase-score) (42 . gnus-cache-enter-article) (follow-link . mouse-face) (mouse-2 . gnus-mouse-pick-article) (38 . gnus-summary-execute-command) (66 keymap (112 . gnus-summary-article-posted-p) (116 . gnus-summary-respool-trace) (113 . gnus-summary-respool-query) (119 . gnus-summary-edit-article) (114 . gnus-summary-respool-article) (73 . gnus-summary-create-article) (105 . gnus-summary-import-article) (98 . gnus-summary-crosspost-article) (99 . gnus-summary-copy-article) (109 . gnus-summary-move-article) (100 . gnus-summary-delete-article) (69 . gnus-summary-expire-articles-now) (101 . gnus-summary-expire-articles)) (88 keymap (89 . gnus-uu-decode-yenc) (98 . gnus-uu-decode-binhex) (111 . gnus-uu-decode-save) (80 . gnus-uu-decode-postscript-and-save) (112 . gnus-uu-decode-postscript) (83 . gnus-uu-decode-unshar-and-save) (115 . gnus-uu-decode-unshar) (118 keymap (80 . gnus-uu-decode-postscript-and-save-view) (112 . gnus-uu-decode-postscript-view) (83 . gnus-uu-decode-unshar-and-save-view) (115 . gnus-uu-decode-unshar-view) (85 . gnus-uu-decode-uu-and-save-view) (117 . gnus-uu-decode-uu-view)) (85 . gnus-uu-decode-uu-and-save) (117 . gnus-uu-decode-uu)) (124 . gnus-summary-pipe-output) (79 keymap (80 . gnus-summary-muttprint) (112 . gnus-summary-pipe-output) (118 . gnus-summary-save-article-vm) (104 . gnus-summary-save-article-folder) (98 . gnus-summary-save-article-body-file) (70 . gnus-summary-write-article-file) (102 . gnus-summary-save-article-file) (114 . gnus-summary-save-article-rmail) (109 . gnus-summary-save-article-mail) (111 . gnus-summary-save-article)) (84 . gnus-summary-goto-article) (111 keymap (116 . gnus-summary-sort-by-recipient) (115 . gnus-summary-sort-by-subject) (114 . gnus-summary-sort-by-random) (111 . gnus-summary-sort-by-original) (110 . gnus-summary-sort-by-number) (109 keymap (110 . gnus-summary-sort-by-most-recent-number) (109 . gnus-summary-sort-by-marks) (100 . gnus-summary-sort-by-most-recent-date)) (108 . gnus-summary-sort-by-lines) (105 . gnus-summary-sort-by-score) (100 . gnus-summary-sort-by-date) (99 . gnus-summary-sort-by-chars) (97 . gnus-summary-sort-by-author)) (27 keymap (76) (108) (72 . gnus-summary-repeat-search-article-backward) (104 . gnus-summary-search-article-backward) (75 . gnus-summary-repeat-search-article-forward) (107 . gnus-summary-search-article-forward) (74) (106) (84) (116) (67) (99) (105 . gnus-symbolic-argument) (42 . gnus-cache-remove-article) (38 . gnus-summary-universal-argument) (82) (83) (114) (115) (94 . gnus-summary-refer-article)) (94 . gnus-summary-refer-parent-article) (120 . gnus-summary-limit-to-unread) (69 . gnus-summary-mark-as-expirable) (101 . gnus-summary-edit-article) (74 . gnus-summary-goto-article) (61 . gnus-summary-tick-article-forward) (33 . gnus-summary-mark-as-read-forward) (44 . gnus-summary-best-unread-article) (46 . gnus-summary-first-unread-article) (3 keymap (6 . gnus-summary-mail-forward)) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) ...) "Tk" gnus-summary-kill-thread)
  general-unbind-non-prefix-key(#f(advice-wrapper :filter-args #<subr define-key> explain-pause--wrap-define-key) (keymap "Auxiliary keymap for Normal state" (119) (201) (233) (200) (232 . gnus-summary-refer-parent-article) (187) (171) (12 keymap (6 . gnus-summary-mail-forward)) (8) (108 keymap (87 . gnus-summary-very-wide-reply-with-original) (119 . gnus-summary-very-wide-reply) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) (105 . gnus-summary-news-other-window) (99 . gnus-summary-mail-other-window)) (72 . gnus-summary-reply-with-original) (104 . gnus-summary-reply) (18) (19 . gnus-summary-prev-article) (20 . gnus-summary-next-article) (75) (107) (106) (83) (115) (116) (76 . gnus-summary-mail-other-window) (73 . gnus-summary-increase-score) (42 . gnus-cache-enter-article) (follow-link . mouse-face) (mouse-2 . gnus-mouse-pick-article) (38 . gnus-summary-execute-command) (66 keymap (112 . gnus-summary-article-posted-p) (116 . gnus-summary-respool-trace) (113 . gnus-summary-respool-query) (119 . gnus-summary-edit-article) (114 . gnus-summary-respool-article) (73 . gnus-summary-create-article) (105 . gnus-summary-import-article) (98 . gnus-summary-crosspost-article) (99 . gnus-summary-copy-article) (109 . gnus-summary-move-article) (100 . gnus-summary-delete-article) (69 . gnus-summary-expire-articles-now) (101 . gnus-summary-expire-articles)) (88 keymap (89 . gnus-uu-decode-yenc) (98 . gnus-uu-decode-binhex) (111 . gnus-uu-decode-save) (80 . gnus-uu-decode-postscript-and-save) (112 . gnus-uu-decode-postscript) (83 . gnus-uu-decode-unshar-and-save) (115 . gnus-uu-decode-unshar) (118 keymap (80 . gnus-uu-decode-postscript-and-save-view) (112 . gnus-uu-decode-postscript-view) (83 . gnus-uu-decode-unshar-and-save-view) (115 . gnus-uu-decode-unshar-view) (85 . gnus-uu-decode-uu-and-save-view) (117 . gnus-uu-decode-uu-view)) (85 . gnus-uu-decode-uu-and-save) (117 . gnus-uu-decode-uu)) (124 . gnus-summary-pipe-output) (79 keymap (80 . gnus-summary-muttprint) (112 . gnus-summary-pipe-output) (118 . gnus-summary-save-article-vm) (104 . gnus-summary-save-article-folder) (98 . gnus-summary-save-article-body-file) (70 . gnus-summary-write-article-file) (102 . gnus-summary-save-article-file) (114 . gnus-summary-save-article-rmail) (109 . gnus-summary-save-article-mail) (111 . gnus-summary-save-article)) (84 . gnus-summary-goto-article) (111 keymap (116 . gnus-summary-sort-by-recipient) (115 . gnus-summary-sort-by-subject) (114 . gnus-summary-sort-by-random) (111 . gnus-summary-sort-by-original) (110 . gnus-summary-sort-by-number) (109 keymap (110 . gnus-summary-sort-by-most-recent-number) (109 . gnus-summary-sort-by-marks) (100 . gnus-summary-sort-by-most-recent-date)) (108 . gnus-summary-sort-by-lines) (105 . gnus-summary-sort-by-score) (100 . gnus-summary-sort-by-date) (99 . gnus-summary-sort-by-chars) (97 . gnus-summary-sort-by-author)) (27 keymap (76) (108) (72 . gnus-summary-repeat-search-article-backward) (104 . gnus-summary-search-article-backward) (75 . gnus-summary-repeat-search-article-forward) (107 . gnus-summary-search-article-forward) (74) (106) (84) (116) (67) (99) (105 . gnus-symbolic-argument) (42 . gnus-cache-remove-article) (38 . gnus-summary-universal-argument) (82) (83) (114) (115) (94 . gnus-summary-refer-article)) (94 . gnus-summary-refer-parent-article) (120 . gnus-summary-limit-to-unread) (69 . gnus-summary-mark-as-expirable) (101 . gnus-summary-edit-article) (74 . gnus-summary-goto-article) (61 . gnus-summary-tick-article-forward) (33 . gnus-summary-mark-as-read-forward) (44 . gnus-summary-best-unread-article) (46 . gnus-summary-first-unread-article) (3 keymap (6 . gnus-summary-mail-forward)) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) ...) "Tk" gnus-summary-kill-thread)
  apply(general-unbind-non-prefix-key #f(advice-wrapper :filter-args #<subr define-key> explain-pause--wrap-define-key) ((keymap "Auxiliary keymap for Normal state" (119) (201) (233) (200) (232 . gnus-summary-refer-parent-article) (187) (171) (12 keymap (6 . gnus-summary-mail-forward)) (8) (108 keymap (87 . gnus-summary-very-wide-reply-with-original) (119 . gnus-summary-very-wide-reply) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) (105 . gnus-summary-news-other-window) (99 . gnus-summary-mail-other-window)) (72 . gnus-summary-reply-with-original) (104 . gnus-summary-reply) (18) (19 . gnus-summary-prev-article) (20 . gnus-summary-next-article) (75) (107) (106) (83) (115) (116) (76 . gnus-summary-mail-other-window) (73 . gnus-summary-increase-score) (42 . gnus-cache-enter-article) (follow-link . mouse-face) (mouse-2 . gnus-mouse-pick-article) (38 . gnus-summary-execute-command) (66 keymap (112 . gnus-summary-article-posted-p) (116 . gnus-summary-respool-trace) (113 . gnus-summary-respool-query) (119 . gnus-summary-edit-article) (114 . gnus-summary-respool-article) (73 . gnus-summary-create-article) (105 . gnus-summary-import-article) (98 . gnus-summary-crosspost-article) (99 . gnus-summary-copy-article) (109 . gnus-summary-move-article) (100 . gnus-summary-delete-article) (69 . gnus-summary-expire-articles-now) (101 . gnus-summary-expire-articles)) (88 keymap (89 . gnus-uu-decode-yenc) (98 . gnus-uu-decode-binhex) (111 . gnus-uu-decode-save) (80 . gnus-uu-decode-postscript-and-save) (112 . gnus-uu-decode-postscript) (83 . gnus-uu-decode-unshar-and-save) (115 . gnus-uu-decode-unshar) (118 keymap (80 . gnus-uu-decode-postscript-and-save-view) (112 . gnus-uu-decode-postscript-view) (83 . gnus-uu-decode-unshar-and-save-view) (115 . gnus-uu-decode-unshar-view) (85 . gnus-uu-decode-uu-and-save-view) (117 . gnus-uu-decode-uu-view)) (85 . gnus-uu-decode-uu-and-save) (117 . gnus-uu-decode-uu)) (124 . gnus-summary-pipe-output) (79 keymap (80 . gnus-summary-muttprint) (112 . gnus-summary-pipe-output) (118 . gnus-summary-save-article-vm) (104 . gnus-summary-save-article-folder) (98 . gnus-summary-save-article-body-file) (70 . gnus-summary-write-article-file) (102 . gnus-summary-save-article-file) (114 . gnus-summary-save-article-rmail) (109 . gnus-summary-save-article-mail) (111 . gnus-summary-save-article)) (84 . gnus-summary-goto-article) (111 keymap (116 . gnus-summary-sort-by-recipient) (115 . gnus-summary-sort-by-subject) (114 . gnus-summary-sort-by-random) (111 . gnus-summary-sort-by-original) (110 . gnus-summary-sort-by-number) (109 keymap (110 . gnus-summary-sort-by-most-recent-number) (109 . gnus-summary-sort-by-marks) (100 . gnus-summary-sort-by-most-recent-date)) (108 . gnus-summary-sort-by-lines) (105 . gnus-summary-sort-by-score) (100 . gnus-summary-sort-by-date) (99 . gnus-summary-sort-by-chars) (97 . gnus-summary-sort-by-author)) (27 keymap (76) (108) (72 . gnus-summary-repeat-search-article-backward) (104 . gnus-summary-search-article-backward) (75 . gnus-summary-repeat-search-article-forward) (107 . gnus-summary-search-article-forward) (74) (106) (84) (116) (67) (99) (105 . gnus-symbolic-argument) (42 . gnus-cache-remove-article) (38 . gnus-summary-universal-argument) (82) (83) (114) (115) (94 . gnus-summary-refer-article)) (94 . gnus-summary-refer-parent-article) (120 . gnus-summary-limit-to-unread) (69 . gnus-summary-mark-as-expirable) (101 . gnus-summary-edit-article) (74 . gnus-summary-goto-article) (61 . gnus-summary-tick-article-forward) (33 . gnus-summary-mark-as-read-forward) (44 . gnus-summary-best-unread-article) (46 . gnus-summary-first-unread-article) (3 keymap (6 . gnus-summary-mail-forward)) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) ...) "Tk" gnus-summary-kill-thread))
  define-key((keymap "Auxiliary keymap for Normal state" (119) (201) (233) (200) (232 . gnus-summary-refer-parent-article) (187) (171) (12 keymap (6 . gnus-summary-mail-forward)) (8) (108 keymap (87 . gnus-summary-very-wide-reply-with-original) (119 . gnus-summary-very-wide-reply) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) (105 . gnus-summary-news-other-window) (99 . gnus-summary-mail-other-window)) (72 . gnus-summary-reply-with-original) (104 . gnus-summary-reply) (18) (19 . gnus-summary-prev-article) (20 . gnus-summary-next-article) (75) (107) (106) (83) (115) (116) (76 . gnus-summary-mail-other-window) (73 . gnus-summary-increase-score) (42 . gnus-cache-enter-article) (follow-link . mouse-face) (mouse-2 . gnus-mouse-pick-article) (38 . gnus-summary-execute-command) (66 keymap (112 . gnus-summary-article-posted-p) (116 . gnus-summary-respool-trace) (113 . gnus-summary-respool-query) (119 . gnus-summary-edit-article) (114 . gnus-summary-respool-article) (73 . gnus-summary-create-article) (105 . gnus-summary-import-article) (98 . gnus-summary-crosspost-article) (99 . gnus-summary-copy-article) (109 . gnus-summary-move-article) (100 . gnus-summary-delete-article) (69 . gnus-summary-expire-articles-now) (101 . gnus-summary-expire-articles)) (88 keymap (89 . gnus-uu-decode-yenc) (98 . gnus-uu-decode-binhex) (111 . gnus-uu-decode-save) (80 . gnus-uu-decode-postscript-and-save) (112 . gnus-uu-decode-postscript) (83 . gnus-uu-decode-unshar-and-save) (115 . gnus-uu-decode-unshar) (118 keymap (80 . gnus-uu-decode-postscript-and-save-view) (112 . gnus-uu-decode-postscript-view) (83 . gnus-uu-decode-unshar-and-save-view) (115 . gnus-uu-decode-unshar-view) (85 . gnus-uu-decode-uu-and-save-view) (117 . gnus-uu-decode-uu-view)) (85 . gnus-uu-decode-uu-and-save) (117 . gnus-uu-decode-uu)) (124 . gnus-summary-pipe-output) (79 keymap (80 . gnus-summary-muttprint) (112 . gnus-summary-pipe-output) (118 . gnus-summary-save-article-vm) (104 . gnus-summary-save-article-folder) (98 . gnus-summary-save-article-body-file) (70 . gnus-summary-write-article-file) (102 . gnus-summary-save-article-file) (114 . gnus-summary-save-article-rmail) (109 . gnus-summary-save-article-mail) (111 . gnus-summary-save-article)) (84 . gnus-summary-goto-article) (111 keymap (116 . gnus-summary-sort-by-recipient) (115 . gnus-summary-sort-by-subject) (114 . gnus-summary-sort-by-random) (111 . gnus-summary-sort-by-original) (110 . gnus-summary-sort-by-number) (109 keymap (110 . gnus-summary-sort-by-most-recent-number) (109 . gnus-summary-sort-by-marks) (100 . gnus-summary-sort-by-most-recent-date)) (108 . gnus-summary-sort-by-lines) (105 . gnus-summary-sort-by-score) (100 . gnus-summary-sort-by-date) (99 . gnus-summary-sort-by-chars) (97 . gnus-summary-sort-by-author)) (27 keymap (76) (108) (72 . gnus-summary-repeat-search-article-backward) (104 . gnus-summary-search-article-backward) (75 . gnus-summary-repeat-search-article-forward) (107 . gnus-summary-search-article-forward) (74) (106) (84) (116) (67) (99) (105 . gnus-symbolic-argument) (42 . gnus-cache-remove-article) (38 . gnus-summary-universal-argument) (82) (83) (114) (115) (94 . gnus-summary-refer-article)) (94 . gnus-summary-refer-parent-article) (120 . gnus-summary-limit-to-unread) (69 . gnus-summary-mark-as-expirable) (101 . gnus-summary-edit-article) (74 . gnus-summary-goto-article) (61 . gnus-summary-tick-article-forward) (33 . gnus-summary-mark-as-read-forward) (44 . gnus-summary-best-unread-article) (46 . gnus-summary-first-unread-article) (3 keymap (6 . gnus-summary-mail-forward)) (82 . gnus-summary-reply-with-original) (114 . gnus-summary-reply) (70 . gnus-summary-followup-with-original) (102 . gnus-summary-followup) ...) "Tk" gnus-summary-kill-thread)
  evil-define-key*((normal) (keymap #^[nil nil keymap 
#^^[3 0 nil nil nil (keymap (2 . gnus-bug) (22 keymap ...) (9 . gnus-info-find-node) (16 . gnus-summary-make-group-from-search) (4 . gnus-summary-describe-group) (6 . gnus-summary-mail-forward) (18 . gnus-summary-caesar-message) (19 keymap ... ... ... ... ... ... ... ... ... ... ... ... ...) (27 keymap ...)) gnus-summary-enter-digest-group nil nil nil nil gnus-summary-button-forward nil gnus-summary-kill-same-subject gnus-recenter gnus-summary-scroll-up nil gnus-summary-save-article-mail nil nil nil nil toggle-truncate-lines nil nil gnus-summary-mark-region-as-read (keymap (19 . gnus-summary-reselect-current-group)) ...] #^^[1 0 #^^[2 0 
#^^[3 0 nil nil nil ... gnus-summary-enter-digest-group nil nil nil nil gnus-summary-button-forward nil gnus-summary-kill-same-subject gnus-recenter gnus-summary-scroll-up nil gnus-summary-save-article-mail nil nil nil nil toggle-truncate-lines nil nil gnus-summary-mark-region-as-read ... ...] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ...] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ...] (backtab . gnus-summary-button-backward) (follow-link . mouse-face) (mouse-2 . gnus-mouse-pick-article) (M-up . gnus-summary-prev-thread) (M-down . gnus-summary-next-thread) (33554464 . gnus-summary-prev-page) (insert-state keymap "Auxiliary keymap for Inser..." (27 keymap ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...)) (operator-state keymap "Auxiliary keymap for Opera..." (119) (201) (233) (200) (232) (187) (171) (12) (8) (76) (108) (72) (104) (27 keymap ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) (11) (10) (18) (19) (20) (3) (75) (107) (74) ...) (visual-state keymap "Auxiliary keymap for Visua..." (119) (201) (233) (200) (232) (187) (171) (12) (8) (76) (108) (72) (104) (27 keymap ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) (11) (10) (18) (19) (20) (3) (75) (107) (74) ...) (motion-state keymap "Auxiliary keymap for Motio..." (119) (201) (233) (200) (232) (187) (171) (12) (8) (76) (108) (72) (104) (27 keymap ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) (11) (10) (18) (19) (20) (3) (75) (107) (74) ...) (normal-state keymap "Auxiliary keymap for Norma..." (119) (201) (233) (200) (232 . gnus-summary-refer-parent-article) (187) (171) (12 keymap ...) (8) (108 keymap ... ... ... ... ... ... ... ...) (72 . gnus-summary-reply-with-original) (104 . gnus-summary-reply) (18) (19 . gnus-summary-prev-article) (20 . gnus-summary-next-article) (75) (107) (106) (83) (115) (116) (76 . gnus-summary-mail-other-window) (73 . gnus-summary-increase-score) ...) (delete . gnus-summary-prev-page) (remap keymap (self-insert-command . undefined))) "Q" gnus-summary-exit-no-update "ZQ" gnus-summary-exit-no-update "q" gnus-summary-exit "ZZ" gnus-summary-exit "g?" gnus-summary-help-map [tab] gnus-summary-widget-forward [backtab] gnus-summary-widget-backward [delete] gnus-summary-prev-page [33554464] gnus-summary-prev-page "\15" gnus-summary-scroll-up "gk" gnus-summary-prev-unread-article "gj" gnus-summary-next-unread-article ...)
  apply(evil-define-key* (normal) (keymap #^[nil nil keymap 
#^^[3 0 nil nil nil (keymap (2 . gnus-bug) (22 keymap ...) (9 . gnus-info-find-node) (16 . gnus-summary-make-group-from-search) (4 . gnus-summary-describe-group) (6 . gnus-summary-mail-forward) (18 . gnus-summary-caesar-message) (19 keymap ... ... ... ... ... ... ... ... ... ... ... ... ...) (27 keymap ...)) gnus-summary-enter-digest-group nil nil nil nil gnus-summary-button-forward nil gnus-summary-kill-same-subject gnus-recenter gnus-summary-scroll-up nil gnus-summary-save-article-mail nil nil nil nil toggle-truncate-lines nil nil gnus-summary-mark-region-as-read (keymap (19 . gnus-summary-reselect-current-group)) ...] #^^[1 0 #^^[2 0 
#^^[3 0 nil nil nil ... gnus-summary-enter-digest-group nil nil nil nil gnus-summary-button-forward nil gnus-summary-kill-same-subject gnus-recenter gnus-summary-scroll-up nil gnus-summary-save-article-mail nil nil nil nil toggle-truncate-lines nil nil gnus-summary-mark-region-as-read ... ...] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ...] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ...] (backtab . gnus-summary-button-backward) (follow-link . mouse-face) (mouse-2 . gnus-mouse-pick-article) (M-up . gnus-summary-prev-thread) (M-down . gnus-summary-next-thread) (33554464 . gnus-summary-prev-page) (insert-state keymap "Auxiliary keymap for Inser..." (27 keymap ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...)) (operator-state keymap "Auxiliary keymap for Opera..." (119) (201) (233) (200) (232) (187) (171) (12) (8) (76) (108) (72) (104) (27 keymap ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) (11) (10) (18) (19) (20) (3) (75) (107) (74) ...) (visual-state keymap "Auxiliary keymap for Visua..." (119) (201) (233) (200) (232) (187) (171) (12) (8) (76) (108) (72) (104) (27 keymap ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) (11) (10) (18) (19) (20) (3) (75) (107) (74) ...) (motion-state keymap "Auxiliary keymap for Motio..." (119) (201) (233) (200) (232) (187) (171) (12) (8) (76) (108) (72) (104) (27 keymap ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) (11) (10) (18) (19) (20) (3) (75) (107) (74) ...) (normal-state keymap "Auxiliary keymap for Norma..." (119) (201) (233) (200) (232 . gnus-summary-refer-parent-article) (187) (171) (12 keymap ...) (8) (108 keymap ... ... ... ... ... ... ... ...) (72 . gnus-summary-reply-with-original) (104 . gnus-summary-reply) (18) (19 . gnus-summary-prev-article) (20 . gnus-summary-next-article) (75) (107) (106) (83) (115) (116) (76 . gnus-summary-mail-other-window) (73 . gnus-summary-increase-score) ...) (delete . gnus-summary-prev-page) (remap keymap (self-insert-command . undefined))) ("Q" gnus-summary-exit-no-update "ZQ" gnus-summary-exit-no-update "q" gnus-summary-exit "ZZ" gnus-summary-exit "g?" gnus-summary-help-map [tab] gnus-summary-widget-forward [backtab] gnus-summary-widget-backward [delete] gnus-summary-prev-page [33554464] gnus-summary-prev-page "\15" gnus-summary-scroll-up "gk" gnus-summary-prev-unread-article "gj" gnus-summary-next-unread-article "[[" gnus-summary-prev-unread-article ...))
  evil-collection--define-key((normal) gnus-summary-mode-map ("Q" gnus-summary-exit-no-update "ZQ" gnus-summary-exit-no-update "q" gnus-summary-exit "ZZ" gnus-summary-exit "g?" gnus-summary-help-map [tab] gnus-summary-widget-forward [backtab] gnus-summary-widget-backward [delete] gnus-summary-prev-page [33554464] gnus-summary-prev-page "\15" gnus-summary-scroll-up "gk" gnus-summary-prev-unread-article "gj" gnus-summary-next-unread-article "[[" gnus-summary-prev-unread-article "]]" gnus-summary-next-unread-article "{" gnus-summary-prev-thread "}" gnus-summary-next-thread "\n" gnus-summary-next-article "\13" gnus-summary-prev-article "m" gnus-summary-mark-as-processable "M" gnus-uu-mark-buffer "u" gnus-summary-unmark-as-processable "U" gnus-summary-unmark-all-processable "%" gnus-uu-mark-by-regexp "C" gnus-summary-mail-other-window "cc" gnus-summary-mail-other-window ...))
  evil-collection-define-key(normal gnus-summary-mode-map "Q" gnus-summary-exit-no-update "ZQ" gnus-summary-exit-no-update "q" gnus-summary-exit "ZZ" gnus-summary-exit "g?" gnus-summary-help-map [tab] gnus-summary-widget-forward [backtab] gnus-summary-widget-backward [delete] gnus-summary-prev-page [33554464] gnus-summary-prev-page " " gnus-summary-next-page "\15" gnus-summary-scroll-up "gk" gnus-summary-prev-unread-article "gj" gnus-summary-next-unread-article "[[" gnus-summary-prev-unread-article "]]" gnus-summary-next-unread-article "{" gnus-summary-prev-thread "}" gnus-summary-next-thread "\n" gnus-summary-next-article "\13" gnus-summary-prev-article "m" gnus-summary-mark-as-processable "M" gnus-uu-mark-buffer "u" gnus-summary-unmark-as-processable "U" gnus-summary-unmark-all-processable "%" gnus-uu-mark-by-regexp ...)
  evil-collection-gnus-setup()
  #f(compiled-function () #<bytecode -0xfb954ee2ddf023d>)()
  eval-after-load(gnus #f(compiled-function () #<bytecode -0xfb954ee2ddf023d>))
  evil-collection-init()
  (progn (use-package-statistics-gather :init 'evil-collection nil) (require 'evil-collection nil nil) (use-package-statistics-gather :config 'evil-collection nil) (evil-collection-init) t (use-package-statistics-gather :config 'evil-collection t) (use-package-statistics-gather :init 'evil-collection t))
  (lambda nil (progn (use-package-statistics-gather :init 'evil-collection nil) (require 'evil-collection nil nil) (use-package-statistics-gather :config 'evil-collection nil) (evil-collection-init) t (use-package-statistics-gather :config 'evil-collection t) (use-package-statistics-gather :init 'evil-collection t)))()
  eval-after-load(evil (lambda nil (progn (use-package-statistics-gather :init 'evil-collection nil) (require 'evil-collection nil nil) (use-package-statistics-gather :config 'evil-collection nil) (evil-collection-init) t (use-package-statistics-gather :config 'evil-collection t) (use-package-statistics-gather :init 'evil-collection t))))
  (lambda nil (eval-after-load 'evil #'(lambda nil (progn (use-package-statistics-gather :init 'evil-collection nil) (require 'evil-collection nil nil) (use-package-statistics-gather :config 'evil-collection nil) (evil-collection-init) t (use-package-statistics-gather :config 'evil-collection t) (use-package-statistics-gather :init 'evil-collection t)))))()
  eval-after-load(mu4e (lambda nil (eval-after-load 'evil #'(lambda nil (progn (use-package-statistics-gather :init 'evil-collection nil) (require 'evil-collection nil nil) (use-package-statistics-gather :config 'evil-collection nil) (evil-collection-init) t (use-package-statistics-gather :config 'evil-collection t) (use-package-statistics-gather :init 'evil-collection t))))))
  load-with-code-conversion("/home/romain/.config/doom/config.el" "/home/romain/.config/doom/config.el" nil t)
  load("~/.config/doom/config" nil nomessage)
  (condition-case e (load path noerror 'nomessage) ((debug doom-error) (signal (car e) (cdr e))) ((debug error) (setq path (locate-file path load-path (get-load-suffixes))) (signal (cond ((not (and path (featurep ...))) 'error) ((file-in-directory-p path (expand-file-name "cli" doom-core-dir)) 'doom-cli-error) ((file-in-directory-p path doom-core-dir) 'doom-core-error) ((file-in-directory-p path doom-user-dir) 'doom-user-error) ((file-in-directory-p path doom-profile-dir) 'doom-profile-error) ((file-in-directory-p path doom-modules-dir) 'doom-module-error) ('doom-error)) (list path e))))
  doom-load("~/.config/doom/config")
  byte-code("\305\306\307\"\210\310\311!\204\21\0\310\312!\203\251\2\10\30\313\314!\211\203'\0\211@\315\1!\210\1A\266\202\202\26\0\210\316\21\317\22\320\321\322\"\210\320..." [doom-context doom-modules doom-disabled-packages custom-file doom-module-context eval-after-load org #f(compiled-function () #<bytecode -0x6e4a2237e88e356>) doom-context-p init reload ensure-list modules doom-context-push #<hash-table equal 52/65 0x157468784df3> nil setplist :core (nil [0 -110 -110 :core nil nil nil]) :user (nil [1 105 -105 :user nil nil nil]) :input (layout [3 0 0 :input layout (+bepo) nil]) :completion (company [4 0 0 :completion company (+childframe) nil] vertico [5 0 0 :completion vertico (+icons) nil]) :ui (doom [6 0 0 :ui doom nil nil] doom-dashboard [7 0 0 :ui doom-dashboard nil nil] doom-quit [8 0 0 :ui doom-quit nil nil] emoji [9 0 0 :ui emoji (+unicode) nil] hl-todo [10 0 0 :ui hl-todo nil nil] indent-guides [11 0 0 :ui indent-guides nil nil] modeline [12 0 0 :ui modeline nil nil] nav-flash [13 0 0 :ui nav-flash nil nil] ophints [14 0 0 :ui ophints nil nil] popup [15 0 0 :ui popup (+defaults) nil] vc-gutter [16 0 0 :ui vc-gutter nil nil] vi-tilde-fringe [17 0 0 :ui vi-tilde-fringe nil nil] workspaces [18 0 0 :ui workspaces nil nil]) :editor (evil [19 0 0 :editor evil (+everywhere) nil] file-templates [20 0 0 :editor file-templates nil nil] fold [21 0 0 :editor fold nil nil] format [22 0 0 :editor format (+onsave) nil] multiple-cursors [23 0 0 :editor multiple-cursors nil nil] snippets [24 0 0 :editor snippets nil nil]) :emacs (dired [25 0 0 :emacs dired (+icons) nil] electric [26 0 0 :emacs electric nil nil] undo [27 0 0 :emacs undo (+tree) nil] vc [28 0 0 :emacs vc nil nil]) :term (vterm [29 0 0 :term vterm nil nil]) :checkers (syntax [30 0 0 :checkers syntax nil nil] spell [31 0 0 :checkers spell (+flyspell +hunspell) nil]) :tools (eval [32 0 0 :tools eval (+overlay) nil] lookup [33 0 0 :tools lookup nil nil] lsp [34 0 0 :tools lsp (+peek) nil] magit [35 0 0 :tools magit (+forge) nil] pdf [36 0 0 :tools pdf nil nil] rgb [37 0 0 :tools rgb nil nil]) :lang (cc [38 0 0 :lang cc (+lsp) nil] common-lisp [39 0 0 :lang common-lisp nil nil] data [40 0 0 :lang data nil nil] emacs-lisp [41 0 0 :lang emacs-lisp nil nil] latex [42 0 0 :lang latex (+latexmk +cdlatex) nil] markdown [43 0 0 :lang markdown nil nil] org [44 0 0 :lang org (+pretty +jupyter +pandoc) nil] python [45 0 0 :lang python (+lsp +pyright) nil] sh [46 0 0 :lang sh (+fish) nil] yaml [47 0 0 :lang yaml nil nil]) :email (mu4e [48 0 0 :email mu4e (+org) nil]) :app (calendar [49 0 0 :app calendar nil nil] irc [50 0 0 :app irc nil nil]) :config (use-package [2 -111 -111 :config use-package nil nil] default [51 0 0 :config default (+bindings +smartparens) nil]) [2 -111 -111 :config use-package nil nil] doom-load "~/.config/emacs/modules/config/use-package/init" [0 -110 -110 :core nil nil nil] "~/.config/emacs/lisp/init" ...] 4)
  load("/home/romain/.config/emacs/.local/etc/@/init.28.el..." noerror nomessage nosuffix)
  (progn (load init-file-name 'noerror 'nomessage 'nosuffix))
  (if init-file-name (progn (load init-file-name 'noerror 'nomessage 'nosuffix)))
  (let ((init-file-name (file-name-concat doom-profile-dir (format "init.%d.elc" emacs-major-version)))) (setq user-init-file t) (if init-file-name (progn (load init-file-name 'noerror 'nomessage 'nosuffix))) (if (eq user-init-file t) (progn (signal 'doom-nosync-error (list init-file-name)))) (setq user-init-file (concat (string-remove-suffix ".elc" user-init-file) ".el")))
  (progn (let ((init-file-name (file-name-concat doom-profile-dir (format "init.%d.elc" emacs-major-version)))) (setq user-init-file t) (if init-file-name (progn (load init-file-name 'noerror 'nomessage 'nosuffix))) (if (eq user-init-file t) (progn (signal 'doom-nosync-error (list init-file-name)))) (setq user-init-file (concat (string-remove-suffix ".elc" user-init-file) ".el"))))
  (if init-file-user (progn (let ((init-file-name (file-name-concat doom-profile-dir (format "init.%d.elc" emacs-major-version)))) (setq user-init-file t) (if init-file-name (progn (load init-file-name 'noerror 'nomessage 'nosuffix))) (if (eq user-init-file t) (progn (signal 'doom-nosync-error (list init-file-name)))) (setq user-init-file (concat (string-remove-suffix ".elc" user-init-file) ".el")))))
  (condition-case error (if init-file-user (progn (let ((init-file-name (file-name-concat doom-profile-dir (format "init.%d.elc" emacs-major-version)))) (setq user-init-file t) (if init-file-name (progn (load init-file-name 'noerror 'nomessage 'nosuffix))) (if (eq user-init-file t) (progn (signal 'doom-nosync-error (list init-file-name)))) (setq user-init-file (concat (string-remove-suffix ".elc" user-init-file) ".el"))))) ((debug error) (display-warning 'initialization (format-message "An error occurred while loading `%s':\n\n%s%s%s\n\nTo ..." user-init-file (get (car error) 'error-message) (if (cdr error) ": " "") (mapconcat #'(lambda (s) (prin1-to-string s t)) (cdr error) ", ")) :warning) (setq init-file-had-error t)))
  (let ((debug-on-error debug-on-error-initial)) (condition-case error (if init-file-user (progn (let ((init-file-name (file-name-concat doom-profile-dir ...))) (setq user-init-file t) (if init-file-name (progn (load init-file-name ... ... ...))) (if (eq user-init-file t) (progn (signal ... ...))) (setq user-init-file (concat (string-remove-suffix ".elc" user-init-file) ".el"))))) ((debug error) (display-warning 'initialization (format-message "An error occurred while loading `%s':\n\n%s%s%s\n\nTo ..." user-init-file (get (car error) 'error-message) (if (cdr error) ": " "") (mapconcat #'(lambda ... ...) (cdr error) ", ")) :warning) (setq init-file-had-error t))) (or (eq debug-on-error debug-on-error-initial) (setq debug-on-error-should-be-set t debug-on-error-from-init-file debug-on-error)))
  (let ((debug-on-error-from-init-file nil) (debug-on-error-should-be-set nil) (debug-on-error-initial (if (eq init-file-debug t) 'startup init-file-debug)) (inhibit-null-byte-detection t)) (let ((debug-on-error debug-on-error-initial)) (condition-case error (if init-file-user (progn (let ((init-file-name ...)) (setq user-init-file t) (if init-file-name (progn ...)) (if (eq user-init-file t) (progn ...)) (setq user-init-file (concat ... ".el"))))) ((debug error) (display-warning 'initialization (format-message "An error occurred while loading `%s':\n\n%s%s%s\n\nTo ..." user-init-file (get (car error) 'error-message) (if (cdr error) ": " "") (mapconcat #'... (cdr error) ", ")) :warning) (setq init-file-had-error t))) (or (eq debug-on-error debug-on-error-initial) (setq debug-on-error-should-be-set t debug-on-error-from-init-file debug-on-error))) (if debug-on-error-should-be-set (progn (setq debug-on-error debug-on-error-from-init-file))))
  startup--load-user-init-file@init-doom(nil)
  apply(startup--load-user-init-file@init-doom nil)
  #f(advice-wrapper :override #<subr startup--load-user-init-file> startup--load-user-init-file@init-doom ((depth . 100)))(nil)
  apply(#f(advice-wrapper :override #<subr startup--load-user-init-file> startup--load-user-init-file@init-doom ((depth . 100))) nil)
  #f(advice-wrapper :before #f(advice-wrapper :override #<subr startup--load-user-init-file> startup--load-user-init-file@init-doom ((depth . 100))) startup--load-user-init-file@undo-silence)(nil)
  apply(#f(advice-wrapper :before #f(advice-wrapper :override #<subr startup--load-user-init-file> startup--load-user-init-file@init-doom ((depth . 100))) startup--load-user-init-file@undo-silence) nil)
  #f(advice-wrapper :after #f(advice-wrapper :before #f(advice-wrapper :override #<subr startup--load-user-init-file> startup--load-user-init-file@init-doom ((depth . 100))) startup--load-user-init-file@undo-silence) startup--load-user-init-file@undo-inhibit-vars)(nil)
  apply(#f(advice-wrapper :after #f(advice-wrapper :before #f(advice-wrapper :override #<subr startup--load-user-init-file> startup--load-user-init-file@init-doom ((depth . 100))) startup--load-user-init-file@undo-silence) startup--load-user-init-file@undo-inhibit-vars) nil)
  startup--load-user-init-file(nil)
  (unwind-protect (startup--load-user-init-file nil) (general-auto-unbind-keys t))
  (progn (general-auto-unbind-keys) (unwind-protect (startup--load-user-init-file nil) (general-auto-unbind-keys t)))
  (condition-case err (progn (general-auto-unbind-keys) (unwind-protect (startup--load-user-init-file nil) (general-auto-unbind-keys t))) ((debug error) (message "PRIVATE CONFIG ERROR: %s" err) nil))
  (let ((doom-context doom-context)) (let ((--dolist-tail-- (ensure-list '(reload modules)))) (while --dolist-tail-- (let ((context (car --dolist-tail--))) (doom-context-push context) (setq --dolist-tail-- (cdr --dolist-tail--))))) (doom-run-hooks 'doom-before-reload-hook) (doom-load (file-name-concat doom-user-dir doom-module-init-file) t) (condition-case err (progn (general-auto-unbind-keys) (unwind-protect (startup--load-user-init-file nil) (general-auto-unbind-keys t))) ((debug error) (message "PRIVATE CONFIG ERROR: %s" err) nil)) (doom-run-hooks 'doom-after-reload-hook) (message "Config successfully reloaded!"))
  (progn (delete-window w) (let ((doom-context doom-context)) (let ((--dolist-tail-- (ensure-list '(reload modules)))) (while --dolist-tail-- (let ((context (car --dolist-tail--))) (doom-context-push context) (setq --dolist-tail-- (cdr --dolist-tail--))))) (doom-run-hooks 'doom-before-reload-hook) (doom-load (file-name-concat doom-user-dir doom-module-init-file) t) (condition-case err (progn (general-auto-unbind-keys) (unwind-protect (startup--load-user-init-file nil) (general-auto-unbind-keys t))) ((debug error) (message "PRIVATE CONFIG ERROR: %s" err) nil)) (doom-run-hooks 'doom-after-reload-hook) (message "Config successfully reloaded!")))
  (if (equal status "finished\n") (progn (delete-window w) (let ((doom-context doom-context)) (let ((--dolist-tail-- (ensure-list '...))) (while --dolist-tail-- (let ((context ...)) (doom-context-push context) (setq --dolist-tail-- (cdr --dolist-tail--))))) (doom-run-hooks 'doom-before-reload-hook) (doom-load (file-name-concat doom-user-dir doom-module-init-file) t) (condition-case err (progn (general-auto-unbind-keys) (unwind-protect (startup--load-user-init-file nil) (general-auto-unbind-keys t))) ((debug error) (message "PRIVATE CONFIG ERROR: %s" err) nil)) (doom-run-hooks 'doom-after-reload-hook) (message "Config successfully reloaded!"))) (user-error "Failed to reload your config"))
  (closure ((w . #<window 27>) t) (_buf status) (if (equal status "finished\n") (progn (delete-window w) (let ((doom-context doom-context)) (let ((--dolist-tail-- ...)) (while --dolist-tail-- (let ... ... ...))) (doom-run-hooks 'doom-before-reload-hook) (doom-load (file-name-concat doom-user-dir doom-module-init-file) t) (condition-case err (progn (general-auto-unbind-keys) (unwind-protect ... ...)) ((debug error) (message "PRIVATE CONFIG ERROR: %s" err) nil)) (doom-run-hooks 'doom-after-reload-hook) (message "Config successfully reloaded!"))) (user-error "Failed to reload your config")))(#<buffer *compilation*<emacs>> "finished\n")
  compilation-handle-exit(exit 0 "finished\n")
  compilation-sentinel(#<process comint> "finished\n")
  apply(compilation-sentinel (#<process comint> "finished\n"))
  explain-pause--wrap-callback(#s(explain-pause-command-record :command process-sentinel :native nil :parent #s(explain-pause-command-record :command "comint" :native nil :parent #s(explain-pause-command-record :command doom/reload :native nil :parent #s(explain-pause-command-record :command root-emacs :native nil :parent nil :executing-time 1493 :entry-snap (25696 693 126483 909000) :too-slow nil :is-profiled nil :under-profile nil :profile nil :depth 0) :executing-time 138 :entry-snap (25696 691 528695 540000) :too-slow t :is-profiled nil :under-profile nil :profile nil :depth 1) :executing-time 0 :entry-snap nil :too-slow nil :is-profiled nil :under-profile nil :profile nil :depth 2) :executing-time 0 :entry-snap nil :too-slow nil :is-profiled nil :under-profile nil :profile nil :depth 3) compilation-sentinel #<process comint> "finished\n")
  apply(explain-pause--wrap-callback #s(explain-pause-command-record :command process-sentinel :native nil :parent #s(explain-pause-command-record :command "comint" :native nil :parent #s(explain-pause-command-record :command doom/reload :native nil :parent #s(explain-pause-command-record :command root-emacs :native nil :parent nil :executing-time 1493 :entry-snap (25696 693 126483 909000) :too-slow nil :is-profiled nil :under-profile nil :profile nil :depth 0) :executing-time 138 :entry-snap (25696 691 528695 540000) :too-slow t :is-profiled nil :under-profile nil :profile nil :depth 1) :executing-time 0 :entry-snap nil :too-slow nil :is-profiled nil :under-profile nil :profile nil :depth 2) :executing-time 0 :entry-snap nil :too-slow nil :is-profiled nil :under-profile nil :profile nil :depth 3) compilation-sentinel (#<process comint> "finished\n"))
  #f(compiled-function (&rest callback-args) #<bytecode -0xa39a10c24aa5ce5>)(#<process comint> "finished\n")

@rbocheux
Copy link

rbocheux commented May 19, 2023

I have some news. The branch that worked has been forked by kepi, you can find it here: kepi/evil-collection branch: mu4e-development.
Hope someone can find what happened with the keybindings.

EDIT: Ok, I think I get what happened. Doom emacs seems to pin the evil-collection to an old version, which is why I got this problem. It works if I specifically pin the evil-collection to the current master branch:

(unpin! evil-collection)
(package! evil-collection
  :recipe (:repo "emacs-evil/evil-collection" :branch "master"))

Sorry for this, because it has nothing to do with evil-collection. It is a doom emacs problem.

abidingabi added a commit to abidingabi/dotfiles that referenced this issue Jun 27, 2023
@edgar-vincent
Copy link
Contributor

@jojojames @condy0919 This issue can probably be closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet