Community

    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search

    Using the PythonScript plugin to automate N++

    Help wanted · · · – – – · · ·
    pythonscript automation
    4
    17
    236
    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.
    • TBugReporter
      TBugReporter @Ekopalypse last edited by

      @Ekopalypse

      Thank you, that fixed it. Apparently, there needs to be a " ‘Plugins to the Plugin’ Admin"! 🙃

      However, it looks like it’ll be quite a while before I understand everything that’s going on in that sample script. Maybe I should publish a version of my Shortcut script without the GUI bells and whistles?

      Alan Kilborn 1 Reply Last reply Reply Quote 0
      • Alan Kilborn
        Alan Kilborn @TBugReporter last edited by

        @TBugReporter said in Using the PythonScript plugin to automate N++:

        Apparently, there needs to be a " ‘Plugins to the Plugin’ Admin"!

        No. PythonScript plugin author has decided Plugins Admin is only to offer a certain PythonScript package. If you want the extras, you have to go get them manually. It’s not a big deal.

        TBugReporter 1 Reply Last reply Reply Quote 0
        • TBugReporter
          TBugReporter @Alan Kilborn last edited by TBugReporter

          @Alan-Kilborn said in Using the PythonScript plugin to automate N++:

          If you want the extras, you have to go get them manually. It’s not a big deal.

          It is, when that “certain PythonScript package” includes sample scripts that won’t work without these extra parts - and when the documentation link built into the plugin gives no clue that these extra parts exist, nor how to get them.

          Alan Kilborn Ekopalypse 2 Replies Last reply Reply Quote 0
          • Alan Kilborn
            Alan Kilborn @TBugReporter last edited by Alan Kilborn

            @TBugReporter said in Using the PythonScript plugin to automate N++:

            that “certain PythonScript package” includes sample scripts that won’t work without these extra parts

            Create an ISSUE that those sample scripts should be removed, or perhaps that instructions for getting the extra parts should be added as comments at the top of those scripts that need them?

            the documentation link built into the plugin gives no clue that these extra parts exist, nor how to get them.

            Documentation can always stand some improvement. Perhaps make that suggestion as well.


            In general, be careful when considering those sample scripts. They are often added to the project without a lot of vetting.


            I maintain that it is “not a big deal”. If you’re a “programmer” that wants everything handed to them, or always made “super obvious”, you’re probably not going to get very far. Google and some due diligence type research are your friends.

            There was one guy a while ago that got all butt hurt that PythonScript 2 was different from PythonScript 3, and felt it was the PythonScript author’s job to better protect him from some of the effects of the differences. We all here kind of laughed at him; it was a “do your research before using, man” kind of thing.


            Perhaps in the end you won’t like Tcl/Tk anyway; that’s been my feeling. Good luck.

            1 Reply Last reply Reply Quote 2
            • Ekopalypse
              Ekopalypse @TBugReporter last edited by

              @TBugReporter said in Using the PythonScript plugin to automate N++:

              It is, when that “certain PythonScript package” includes sample scripts

              I agree, maybe it should be wrapped in a try block and if it can’t be found a MessageBox is called explaining this.

              … nor how to get them

              This is not as easy as it sounds, because there are several ways to set up a “PythonScript environment”. You can use one of the “environments” provided by the plugin, but you can also use the entire Python ecosystem by using a local Python installation along with the plugin. So at a certain point it’s hard to draw the line on what you can/should document.

              TBugReporter 1 Reply Last reply Reply Quote 4
              • TBugReporter
                TBugReporter @Ekopalypse last edited by

                @Ekopalypse said in Using the PythonScript plugin to automate N++:

                maybe it should be wrapped in a try block and if it can’t be found a MessageBox is called explaining this.

                You mean like this one? 😉
                Missing Library.png
                While this provides useful info, I still think it’s not useful enough. I’ll be posting on @bruderstein’s GitHub, as soon as I decide exactly what to post.

                Alan Kilborn Ekopalypse 2 Replies Last reply Reply Quote 0
                • Alan Kilborn
                  Alan Kilborn @TBugReporter last edited by

                  @TBugReporter said in Using the PythonScript plugin to automate N++:

                  While this provides useful info, I still think it’s not useful enough. I’ll be posting on @bruderstein’s GitHub, as soon as I decide exactly what to post.

                  Did you consider my story about the other guy that we laughed at? Do what you will, but think about NOT making yourself into another one of those guys.

                  Aren’t you the person that had the major tizzy because the right-click options on one of the controls in the ShortcutMapper had a couple of extra default options left on it?

                  We do seem to attract those that we call “interesting thinkers”, here…

                  TBugReporter 1 Reply Last reply Reply Quote 1
                  • TBugReporter
                    TBugReporter @Alan Kilborn last edited by TBugReporter

                    @Alan-Kilborn said in Using the PythonScript plugin to automate N++:

                    Did you consider my story about the other guy that we laughed at?

                    Not really, because I’m only concerned about how the PythonScript plugin works, and in the process of learning about Python, my research - yes, I did some - revealed that there are some major differences between 2 and 3, but the question of whether the plugin conforms to whatever standards are (or were) established for the Python language - well, that question really didn’t matter to me.

                    Do what you will, but think about NOT making yourself into another one of those guys.

                    It’s hard to know what reaction a question or comment will generate before asking the question or making the comment.

                    Aren’t you the person that had the major tizzy because the right-click options on one of the controls in the ShortcutMapper had a couple of extra default options left on it?

                    I wouldn’t characterize it that way, but yes. Since that, because of that, my opinion of N++ has changed. I used to think of it as a well-polished alternative to the text editor supplied with Windows, but now I see it more as a collection of parts that don’t quite fit together - and that getting them to work together as well as they do is a major accomplishment in itself. That’s not to say that I won’t keep pushing to get it working better, but now I see the rough edges and understand why they’re so rough.

                    Alan Kilborn 1 Reply Last reply Reply Quote 1
                    • Ekopalypse
                      Ekopalypse @TBugReporter last edited by Ekopalypse

                      @TBugReporter

                      You mean like this one?

                      Yes, but no - more in the direction pointing to the package that contains the Tkinter module.

                      1 Reply Last reply Reply Quote 0
                      • Alan Kilborn
                        Alan Kilborn @TBugReporter last edited by Alan Kilborn

                        @TBugReporter said in Using the PythonScript plugin to automate N++:

                        I wouldn’t characterize it that way, but yes.

                        LOL.
                        And thanks for not having an emotional overreaction to my comments the way some people do.


                        because of that, my opinion of N++ has changed. I used to think of it as a well-polished alternative to the text editor supplied with Windows, but now I see it more as a collection of parts that don’t quite fit together - and that getting them to work together as well as they do is a major accomplishment in itself.

                        IMO, Notepad++ is “well polished” but maybe it has enough quirks to keep things interesting. :-)

                        And I don’t know that I’d agree that it is a “collection of parts that don’t quite fit together”. Probably if it were a sack of disjointed parts even the author would’ve given up on it long ago.


                        That’s not to say that I won’t keep pushing to get it working better, but now I see the rough edges and understand why they’re so rough.

                        I don’t know if your “rough” assessment is accurate, but I agree that all any of us (that are interested) can do, is some “pushing”.

                        TBugReporter 1 Reply Last reply Reply Quote 0
                        • TBugReporter
                          TBugReporter @Alan Kilborn last edited by TBugReporter

                          @Alan-Kilborn said in Using the PythonScript plugin to automate N++:

                          thanks for not having an emotional overreaction to my comments the way some people do.

                          I have experience with people who seem brusque when communicating over the Internet - heck, I am “those people” sometimes.

                          IMO, Notepad++ is “well polished” but maybe it has enough quirks to keep things interesting. :-)

                          Okay, I’ll go with “quirky”.


                          @Ekopalypse:
                          Two questions for you -

                          1. I’m trying to import your taskdialog.py script into mine, but I’m getting this error:
                            File "{...}\AppData\Roaming\Notepad++\plugins\Config\PythonScript\scripts\taskdialog.py", line 400, in show
                              None if self.checked_verification is None else ctypes.byref(wintypes.INT(self.checked_verification))
                          ctypes.ArgumentError: argument 1: <type 'exceptions.TypeError'>: expected LP_TASKDIALOGCONFIG instance instead of pointer to TASKDIALOGCONFIG
                          

                          Is this a bug in your script, or mine (or both)?

                          1. I want my dialog to contain a group of checkboxes, but your script seems to only allow for one. What do I need to do to get this? Never mind. I found the Windows documentation for the TaskDialog routines and realized that this is just a slightly fancier version of “Abort, Retry, Ignore?” - IOW, it’s still not configurable enough for what I want, and everybody uses GUI IDEs to build these now, so there’s very little info out there on how to “roll your own”.
                          Ekopalypse 2 Replies Last reply Reply Quote 0
                          • Ekopalypse
                            Ekopalypse @TBugReporter last edited by

                            @TBugReporter

                            Let me check - I will follow up later today.

                            1 Reply Last reply Reply Quote 0
                            • Ekopalypse
                              Ekopalypse @TBugReporter last edited by

                              @TBugReporter

                              I was not able to replicate the error you mentioned, but unfortunately while testing I found a serious problem that could lead to a hanging or even crashing npp. This needs to be investigated further.

                              1 Reply Last reply Reply Quote 1
                              • First post
                                Last post
                              Copyright © 2014 NodeBB Forums | Contributors