Community
    • Login

    Notepad++ v8.6 Release Candidate

    Scheduled Pinned Locked Moved Announcements
    20 Posts 5 Posters 2.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • PeterJonesP
      PeterJones @donho
      last edited by

      @donho said in Notepad++ v8.6 Release Candidate:

      Is anyone here can reproduce it?

      Yes, I can reproduce (though at first I couldn’t) – maybe like me, @donho did a 4x1 column selection instead of 4x0 column selection:

      Step 1: column selection, showing it’s one character wide:
      f393cd28-fc36-4f4a-a823-91e24d189232-image.png

      Step 2: hit Del/Delete key: it deletes the whole NBSP, without leaving
      55654be0-846f-43a3-b6d5-eca0fc1a38b4-image.png

      Confirm: View > Show Symbol is showing all characters, so it’s not just hiding something:
      6293f7d3-e55f-4409-9032-2eeee2b0b8b7-image.png

      Original Conclusion: thought I could not reproduce. But as I was re-reading @mkupper’s post, I wondered if I misinterpreted.

      Undo, so it’s back to the original

      Then Step 1: do a 4x0 zero-width column selection
      968616d3-52b0-455b-89c1-6e9a6716347b-image.png

      Step 2: Del/Delete =>
      6633e526-beed-467b-99a1-806a5253ff2a-image.png

      Confirmed the bug report. With a 0-width column selection, hitting Del before NBSP broke it into its constituent bytes and just deleted one byte rather than one character.

      Tried with some accented characters (2 bytes each) and then some smilies (with 3-4 bytes each):

      Before: 454962ba-e43c-437e-a141-30a6da6c2172-image.png
      02dae62e-ae3b-466f-95be-7d736ac51bba-image.png
      After hitting Del once: 6593397c-a63d-4cbb-8ae3-30bfcea33dc8-image.png
      bab1e034-d871-4e21-8d65-501b774bf9c1-image.png

      So it’s not just NBSP. With a 0-width column selection, hitting Del when the next character is a multi-byte UTF-8 character causes it to delete only the first byte rather than the whole character.

      1 Reply Last reply Reply Quote 3
      • PeterJonesP
        PeterJones @donho
        last edited by

        @donho said in Notepad++ v8.6 Release Candidate:

        What’s the Hex value of NBSB? So I can try to reproduce it.

        @mkupper’s NBSB was just a typo for NBSP; see the right value in his screenshot

        NBSP is the non-breaking space, at U+00A0 , which is UTF-8 encoded as the two bytes c2a0.

        donhoD 1 Reply Last reply Reply Quote 4
        • donhoD
          donho @PeterJones
          last edited by

          @PeterJones @mkupper
          Please check the fix:
          https://github.com/notepad-plus-plus/notepad-plus-plus/pull/14384

          PeterJonesP 1 Reply Last reply Reply Quote 2
          • PeterJonesP
            PeterJones @donho
            last edited by

            @donho ,

            I first tried with the “Notepad++.MSVC.x64.Debug” artifact: I loaded my example file from yesterday, did the zero-width selection, and hit Delete, and that caused an MSVC assertion error:
            4bc95009-8a21-4c22-88b2-a51d51805719-image.png

            … But as I was writing this reply, I realized that I probably don’t have everything set up right for DEBUG builds, so I thought I would try the RELEASE build:

            When I run with the “Notepad++.MSVC.x64.Release” artifact, the zero-width column selection followed by Del works as expected on the multi-byte UTF-8 characters. So the fix looks good to me. But you should probably wait for @mkupper to confirm as well, because he might have a different sequence, which may or may not behave the same as my experiment.

            Alan KilbornA donhoD 2 Replies Last reply Reply Quote 1
            • Alan KilbornA
              Alan Kilborn @PeterJones
              last edited by Alan Kilborn

              @PeterJones said in Notepad++ v8.6 Release Candidate:

              I realized that I probably don’t have everything set up right for DEBUG builds

              There is no special setup for running a Debug build, so you are set up correctly. :-)

              The problem is: Someone at some time wrote some poor assertions, and now they just get in the way of things. OR…the assertions were good at the time written, but now other things have changed, and no one maintained the assertions, so now they aren’t so good. :-(

              1 Reply Last reply Reply Quote 0
              • donhoD
                donho @PeterJones
                last edited by

                @PeterJones said in Notepad++ v8.6 Release Candidate:

                I first tried with the “Notepad++.MSVC.x64.Debug” artifact: I loaded my example file from yesterday, did the zero-width selection, and hit Delete, and that caused an MSVC assertion error:

                Could you share your example file here please?

                PeterJonesP 1 Reply Last reply Reply Quote 0
                • PeterJonesP
                  PeterJones @donho
                  last edited by PeterJones

                  @donho said in Notepad++ v8.6 Release Candidate:

                  Could you share your example file here please?

                  768 × 1024
                  768 × 1024
                  768 × 1024
                  768 × 1024
                  U+C0	À	À
                  U+C1	Á	Á
                  U+C2	Â	Â
                  U+C3	Ã	Ã
                  U+C4	Ä	Ä
                  U+C5	Å	Å
                  * ☺ `U+2640`       SMILE        ☺
                  * ☹ `U+2639`       FROWN       ☹
                  * 😃 `U+1F603`      OPEN        😃
                  * 😉 `U+1F609`      WINK        😉
                  * 😐 `U+1F610`      NEUTRAL     😐
                  * 😜 `U+1F61C`      TongueOut   😜
                  * 😲 `U+1F632`      ASTONISHED  😲
                  

                  update: the tabs and NBSP didn’t come through, so here it is base64-encoded using the MIME Tools plugin:

                  NzY4wqDDl8KgMTAyNA0KNzY4wqDDl8KgMTAyNA0KNzY4wqDDl8KgMTAyNA0KNzY4wqDDl8KgMTAyNA0KVStDMAnDgAnDgA0KVStDMQnDgQnDgQ0KVStDMgnDggnDgg0KVStDMwnDgwnDgw0KVStDNAnDhAnDhA0KVStDNQnDhQnDhQ0KKiDimLogYFUrMjY0MGAgICAgICAgU01JTEUgICAgICAgIOKYug0KKiDimLkgYFUrMjYzOWAgICAgICAgRlJPV04gICAgICAg4pi5DQoqIPCfmIMgYFUrMUY2MDNgICAgICAgT1BFTiAgICAgICAg8J+Ygw0KKiDwn5iJIGBVKzFGNjA5YCAgICAgIFdJTksgICAgICAgIPCfmIkNCiog8J+YkCBgVSsxRjYxMGAgICAgICBORVVUUkFMICAgICDwn5iQDQoqIPCfmJwgYFUrMUY2MUNgICAgICAgVG9uZ3VlT3V0ICAg8J+YnA0KKiDwn5iyIGBVKzFGNjMyYCAgICAgIEFTVE9OSVNIRUQgIPCfmLINCg
                  
                  donhoD 1 Reply Last reply Reply Quote 1
                  • donhoD
                    donho @PeterJones
                    last edited by donho

                    @PeterJones said in Notepad++ v8.6 Release Candidate:

                    update: the tabs and NBSP didn’t come through, so here it is base64-encoded using the MIME Tools plugin:

                    Hmm… using debug built locally binary, with 0 length column mode selection in front of all special chars then DEL - no assertion.

                    Could you provide the accurate instructions to reproduce the assertion please?

                    PeterJonesP 1 Reply Last reply Reply Quote 0
                    • PeterJonesP
                      PeterJones @donho
                      last edited by PeterJones

                      @donho ,

                      I found the problem on that. When I got the assertion error, I was still using a corrupted version of my testfile that had some of the NBSP as a single xA0 instead.

                      I can also reproduce the error by pasting in this base64 and decoding it:

                      NzY4oMOXwqAxMDI0DQo3Njigw5fCoDEwMjQNCjc2OKDDl8KgMTAyNA0KNzY4oMOXwqAxMDI0DQpVK0MwCcOACcOADQpVK0MxCcOBCcOBDQpVK0MyCcOCCcOCDQpVK0MzCcODCcODDQpVK0M0CcOECcOEDQpVK0M1CcOFCcOFDQoqIOKYuiBgVSsyNjQwYCAgICAgICBTTUlMRSAgICAgICAg4pi6DQoqIOKYuSBgVSsyNjM5YCAgICAgICBGUk9XTiAgICAgICDimLkNCiog8J+YgyBgVSsxRjYwM2AgICAgICBPUEVOICAgICAgICDwn5iDDQoqIPCfmIkgYFUrMUY2MDlgICAgICAgV0lOSyAgICAgICAg8J+YiQ0KKiDwn5iQIGBVKzFGNjEwYCAgICAgIE5FVVRSQUwgICAgIPCfmJANCiog8J+YnCBgVSsxRjYxQ2AgICAgICBUb25ndWVPdXQgICDwn5icDQoqIPCfmLIgYFUrMUY2MzJgICAgICAgQVNUT05JU0hFRCAg8J+Ysg0K
                      

                      So the error is unrelated to the column-delete, and instead related to the DEBUG-build’s handling of invalid UTF-8 sequences in certain unusual situations. (I don’t think it’s critical that a debug build has difficuly with invalid UTF-8. I verified that the v8.6-RC build and the RELEASE build on this PR don’t do anything unpleasant under the same circumstances. Unless you want to make the DEBUG build more robust against invalid UTF-8, I’d probably recommend not worrying about it.)

                      donhoD 1 Reply Last reply Reply Quote 2
                      • donhoD
                        donho @PeterJones
                        last edited by

                        @PeterJones

                        Thank you for the detail explanation.
                        I will do a RC2 immediately.

                        donhoD 1 Reply Last reply Reply Quote 2
                        • donhoD donho unpinned this topic on
                        • donhoD
                          donho @donho
                          last edited by donho

                          Notepad++ v8.6 Release Candidate 2 is available here:
                          https://community.notepad-plus-plus.org/topic/25158/notepad-v8-6-release-candidate-2

                          The regression of DEL is fixed in RC2.

                          @xomx
                          https://github.com/notepad-plus-plus/wingup/pull/48 is included.

                          1 Reply Last reply Reply Quote 3
                          • donhoD donho locked this topic on
                          • First post
                            Last post
                          The Community of users of the Notepad++ text editor.
                          Powered by NodeBB | Contributors