Wednesday, May 3, 2023

Re: Bug? E216: No such group or event: filetypedetect BufReadPost msg in 14_XxdBack:

On Wed, May 3, 2023 at 10:26 AM Bram Moolenaar <Bram@moolenaar.net> wrote:
>
>
> Zach Pfeffer wrote:
>
> > > > 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?
> > >
> > > Looks like your diff is the wrong way around.
> >
> >
> > 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?
>
> Thanks for checking. Not need to do more, I'll just include the change.

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 -- Bram@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 ///



--
Blog | LinkedIn | Twitter | Facebook

--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/vim_use/CAPXzgB3fd38R0W%3DY%3D%2B2CnzXvKWfLFUOQ4b7%3Dg-%3DHWPbQMRN4LA%40mail.gmail.com.

No comments: