Community
    • Login

    How to capture what user is typing

    Scheduled Pinned Locked Moved Notepad++ & Plugin Development
    12 Posts 2 Posters 9.0k Views 2 Watching
    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.
    • bycn82 bbbbB Offline
      bycn82 bbbb
      last edited by

      Thanks,

      I already got notified. but the notifyCode->ch is always equals to 0

      Can you please help to explain how can I check what user is typed?

      1 Reply Last reply Reply Quote 0
      • dailD Offline
        dail
        last edited by dail

        You should read the documentation on those notifications. SCN_MODIFIED does not use the ch field, it uses the text field because the user could paste multiple characters (or delete a range of text).

        If indeed you do want individual characters only (and skip any paste/deletes) then you can catch SCN_CHARADDED notifications which does use ch.

        1 Reply Last reply Reply Quote 0
        • bycn82 bbbbB Offline
          bycn82 bbbb
          last edited by

          I want to be notified when user typed “backspace”, but maybe VK_BACK is the not correct value. or maybe it was not captured in SCN_MODIFIED/CHARADDED. any recommendation?

          1 Reply Last reply Reply Quote 0
          • dailD Offline
            dail
            last edited by

            SCN_MODIFIED does tell you when a character (or range of characters) is deleted, but not necessarily due to the backspace key. The modificationType will have the SC_MOD_DELETETEXT flag set.

            If you are needing to capture actual keyboard input and not just changes to the text document then you’ll have to go the subclassing/superclassing route.

            1 Reply Last reply Reply Quote 0
            • bycn82 bbbbB Offline
              bycn82 bbbb
              last edited by

              Yes,
              the BACKSPACE will trigger the notification with SC_MOD_DELETETEXT bit in the modificationType. Thanks.

              I got another question.
              Currently I bind the hotkey with the function using the menu. But is it possible to hide the menu or is there any another to link the hotkey and func?

              1 Reply Last reply Reply Quote 0
              • dailD Offline
                dail
                last edited by dail

                No it is only possible using the FuncItem struct which requires a hotkey.

                Edit: Actually it doesn’t require a hotkey, however the struct is the only way to register functions with Notepad++…which automatically show up in the menu.

                1 Reply Last reply Reply Quote 0
                • bycn82 bbbbB Offline
                  bycn82 bbbb
                  last edited by

                  How to response the VK_ESCAPE? currently I am binding the ESC on the menu command, it works. but I was wondering whether I can filter the VK_ESCAPE somewhere or I can dynamically bind it as a hotkey for a function.

                  1 Reply Last reply Reply Quote 0
                  • dailD Offline
                    dail
                    last edited by

                    As far as I know you can’t dynamically bind shortcuts.

                    1 Reply Last reply Reply Quote 0
                    • bycn82 bbbbB Offline
                      bycn82 bbbb
                      last edited by

                      Hi Dali,
                      I was trying to intercept the user typing by receiving the notification when editor is read-only, so far, it works good. but read-only editor is not an ultimate solution, I wondering is there any way to ignore the key press on the editor and interact with the key pressing?
                      Regards,

                      1 Reply Last reply Reply Quote 0
                      • dailD Offline
                        dail
                        last edited by

                        I’m not sure. I’m not saying it is impossible though, just don’t know how.

                        1 Reply Last reply Reply Quote 0

                        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                        With your input, this post could be even better 💗

                        Register Login
                        • First post
                          Last post
                        The Community of users of the Notepad++ text editor.
                        Powered by NodeBB | Contributors