Loading ...
Sorry, an error occurred while loading the content.

[] inside \%[] doesn't work with new regex engine.

Expand Messages
  • Yukihiro Nakadaira
    [] inside %[] doesn t work with new regex engine. Steps to reproduce: $ vim -u NONE ... 0 ... INTERNAL: Negative state char: -165 INTERNAL: Negative state
    Message 1 of 4 , Jun 17, 2013
    • 0 Attachment
      [] inside \%[] doesn't work with new regex engine.

      Steps to reproduce:
        $ vim -u NONE
        :echo match('a', '\%#=1\%[[a]]')
        0
        :echo match('a', '\%#=2\%[[a]]')
        INTERNAL: Negative state char: -165
        INTERNAL: Negative state char: -165
        -1


      --
      Yukihiro Nakadaira - yukihiro.nakadaira@...

      --
      --
      You received this message from the "vim_dev" 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_dev" group.
      To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscribe@....
      For more options, visit https://groups.google.com/groups/opt_out.
       
       
    • Bram Moolenaar
      ... Thanks for reporting this. The %[] item didn t support nesting at all. Fortunately it s easy to fix. And then it will support anything (unlike the old
      Message 2 of 4 , Jun 17, 2013
      • 0 Attachment
        Yukihiro Nakadaira wrote:

        > [] inside \%[] doesn't work with new regex engine.
        >
        > Steps to reproduce:
        > $ vim -u NONE
        > :echo match('a', '\%#=1\%[[a]]')
        > 0
        > :echo match('a', '\%#=2\%[[a]]')
        > INTERNAL: Negative state char: -165
        > INTERNAL: Negative state char: -165
        > -1

        Thanks for reporting this.

        The \%[] item didn't support nesting at all. Fortunately it's easy to
        fix. And then it will support anything (unlike the old engine).

        --
        "Marriage is a wonderful institution...
        but who wants to live in an institution?"
        - Groucho Marx

        /// Bram Moolenaar -- Bram@... -- http://www.Moolenaar.net \\\
        /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
        \\\ an exciting new programming language -- http://www.Zimbu.org ///
        \\\ help me help AIDS victims -- http://ICCF-Holland.org ///

        --
        --
        You received this message from the "vim_dev" 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_dev" group.
        To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscribe@....
        For more options, visit https://groups.google.com/groups/opt_out.
      • Andy Wokula
        ... Literal `] inside ` %[...] required escaping as `[]] . Is this still the case? Escaping as ` ] would be nice. -- Andy -- -- You received this message
        Message 3 of 4 , Jun 17, 2013
        • 0 Attachment
          Am 17.06.2013 21:33, schrieb Bram Moolenaar:
          >
          > Yukihiro Nakadaira wrote:
          >
          >> [] inside \%[] doesn't work with new regex engine.
          >>
          >> Steps to reproduce:
          >> $ vim -u NONE
          >> :echo match('a', '\%#=1\%[[a]]')
          >> 0
          >> :echo match('a', '\%#=2\%[[a]]')
          >> INTERNAL: Negative state char: -165
          >> INTERNAL: Negative state char: -165
          >> -1
          >
          > Thanks for reporting this.
          >
          > The \%[] item didn't support nesting at all. Fortunately it's easy to
          > fix. And then it will support anything (unlike the old engine).

          Literal `]' inside `\%[...]' required escaping as `[]]'.
          Is this still the case?
          Escaping as `\]' would be nice.

          --
          Andy

          --
          --
          You received this message from the "vim_dev" 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_dev" group.
          To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscribe@....
          For more options, visit https://groups.google.com/groups/opt_out.
        • Bram Moolenaar
          ... Yep. I should add a test for that. ... Well, then it would be incompatible with the old engine. Putting a character inside [] for escaping is actually
          Message 4 of 4 , Jun 17, 2013
          • 0 Attachment
            Andy Wokula wrote:

            > Am 17.06.2013 21:33, schrieb Bram Moolenaar:
            > >
            > > Yukihiro Nakadaira wrote:
            > >
            > >> [] inside \%[] doesn't work with new regex engine.
            > >>
            > >> Steps to reproduce:
            > >> $ vim -u NONE
            > >> :echo match('a', '\%#=1\%[[a]]')
            > >> 0
            > >> :echo match('a', '\%#=2\%[[a]]')
            > >> INTERNAL: Negative state char: -165
            > >> INTERNAL: Negative state char: -165
            > >> -1
            > >
            > > Thanks for reporting this.
            > >
            > > The \%[] item didn't support nesting at all. Fortunately it's easy to
            > > fix. And then it will support anything (unlike the old engine).
            >
            > Literal `]' inside `\%[...]' required escaping as `[]]'.
            > Is this still the case?

            Yep. I should add a test for that.

            > Escaping as `\]' would be nice.

            Well, then it would be incompatible with the old engine. Putting
            a character inside [] for escaping is actually more consistent than
            using a backslash.

            --
            "Marriage is the process of finding out what kind of man your wife
            would have preferred"

            /// Bram Moolenaar -- Bram@... -- http://www.Moolenaar.net \\\
            /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
            \\\ an exciting new programming language -- http://www.Zimbu.org ///
            \\\ help me help AIDS victims -- http://ICCF-Holland.org ///

            --
            --
            You received this message from the "vim_dev" 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_dev" group.
            To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscribe@....
            For more options, visit https://groups.google.com/groups/opt_out.
          Your message has been successfully submitted and would be delivered to recipients shortly.