Bug? E216: No such group or event: filetypedetect BufReadPost msg in <SNR>14_XxdBack:

6 views
Skip to first unread message

Zach Pfeffer

unread,
May 2, 2023, 4:23:00 AM5/2/23
to v...@vim.org
Vim Users,

Posting this here based on the request at https://github.com/vim/vim/blob/master/CONTRIBUTING.md :

"If you are not 100% sure that your problem is a Vim issue, please first discuss this on the Vim user maillist."

Running:

VIM - Vi IMproved 9.0 (2022 Jun 28, compiled Jun 28 2022 13:09:53)
MS-Windows 32-bit GUI version with OLE support
(the one downloadable from https://www.vim.org/download.php)

... I noticed a message when clicking Convert Back after Convert to HEX:

Error detected while processing functions <SNR>14_XxdBack:
line    9:
E216: No such group or event: filetypedetect BufReadPost

...this message cleared when I pressed Enter.

I found this message went away with this patch:

--- menu.vim    2023-04-29 16:47:05.708417500 -0600
+++ menu.vim.bak        2022-06-28 07:08:36.000000000 -0600
@@ -599,10 +599,8 @@
     s:XxdFind()
     exe ':%!' .. g:xxdprogram .. ' -r'
   endif
-  if exists('did_load_filetypes')
-    set ft=
-    doautocmd filetypedetect BufReadPost
-  endif
+  set ft=
+  doautocmd filetypedetect BufReadPost
   &mod = mod
 enddef

Is there a better solution? Should I file this as a bug? 

--
 Blog | LinkedIn | Twitter | Facebook

Bram Moolenaar

unread,
May 2, 2023, 7:46:27 PM5/2/23
to vim...@googlegroups.com, Zach Pfeffer, v...@vim.org

[resend, picky postmaster refused the message]
Looks like your diff is the wrong way around.

Instead of checking for "did_load_filetypes" a more direct condition
would be to use:

if exists('#filetypedetect') && exists('#BufReadPost')
set ft=
doautocmd filetypedetect BufReadPost
endif

Does that work for you?


--
Lower life forms have more fun!

/// Bram Moolenaar -- Br...@Moolenaar.net -- http://www.Moolenaar.net \\\
/// \\\
\\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///

Bram Moolenaar

unread,
May 2, 2023, 7:46:28 PM5/2/23
to vim...@googlegroups.com, Zach Pfeffer, v...@vim.org

[resend, picky postmaster refused the message]

Zach Pfeffer wrote:

Zach Pfeffer

unread,
May 2, 2023, 10:24:42 PM5/2/23
to Bram Moolenaar, vim...@googlegroups.com, v...@vim.org
Yup! I'm sorry about that. Here's the patch with your suggestion with
the diff the correct way around.

--- menu.vim.orig 2022-06-28 07:08:36.000000000 -0600
+++ menu.vim 2023-05-02 20:20:00.052527000 -0600
@@ -599,8 +599,10 @@
s:XxdFind()
exe ':%!' .. g:xxdprogram .. ' -r'
endif
- set ft=
- doautocmd filetypedetect BufReadPost
+ if exists('#filetypedetect') && exists('#BufReadPost')
+ set ft=
+ doautocmd filetypedetect BufReadPost
+ endif
&mod = mod
enddef

>
>
> Instead of checking for "did_load_filetypes" a more direct condition
> would be to use:
>
> if exists('#filetypedetect') && exists('#BufReadPost')
> set ft=
> doautocmd filetypedetect BufReadPost
> endif
>
> Does that work for you?

Yup. Works great.

Would you like me to file a bug and create a patch on vim-dev against the bug?

>
>
> --
> Lower life forms have more fun!
>
> /// Bram Moolenaar -- Br...@Moolenaar.net -- http://www.Moolenaar.net \\\
> /// \\\
> \\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
> \\\ help me help AIDS victims -- http://ICCF-Holland.org ///



Bram Moolenaar

unread,
May 3, 2023, 12:26:35 PM5/3/23
to vim...@googlegroups.com, Zach Pfeffer
Thanks for checking. Not need to do more, I'll just include the change.

--
"You're fired." (1980)
"You're laid off." (1985)
"You're downsized." (1990)
"You're rightsized." (1992)
(Scott Adams - The Dilbert principle)

Tony Mechelynck

unread,
May 3, 2023, 3:16:20 PM5/3/23
to vim...@googlegroups.com, Zach Pfeffer
Hm. In almost a year there must have been a few changes in earlier
lines of menu.vim.

In the current version (2022 Nov 27) I see that s:XxdFind() line at
line 606 instead of 599, but the incriminated code below it is the
same.

Best regards,
Tony.

Zach Pfeffer

unread,
May 3, 2023, 10:25:14 PM5/3/23
to Bram Moolenaar, vim...@googlegroups.com
Thanks!

>
> --
> "You're fired." (1980)
> "You're laid off." (1985)
> "You're downsized." (1990)
> "You're rightsized." (1992)
> (Scott Adams - The Dilbert principle)
>
> /// Bram Moolenaar -- Br...@Moolenaar.net -- http://www.Moolenaar.net \\\
> /// \\\
> \\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
> \\\ help me help AIDS victims -- http://ICCF-Holland.org ///



Reply all
Reply to author
Forward
0 new messages