PythonScript
-
Three overlapping replies. That might be a record. ;-)
—
Since the primary question has been sufficiently answered, I don’t feel bad hijacking the thread:
@cmeriaux said in PythonScript:
the user script path is kind of obsolete with latest Npp workflow,
Why do you say that?
From the way I understood it, “system” vs “user” was originally intended to allow some scripts on a given PC that were available to all users (like if my wife and I wanted to use scripts X and Y when logged in as our separate accounts), but some scripts that are unique to a given user (like I also want Z available, but she wants W available, and neither of us want to see the unique-to-spouse’s scripts). I don’t see what about the current workflow would obsolete that.
Or, for a less spousal example, maybe a workplace IT department wants to install Notepad++ with scripts that every user should use, but no user should have permission to modify (in the system-scripts area, it’s in the UAC-protected Program Files hierarchy; this could be used for protected business processes where auditors would complain if it wasn’t done the same way for every worker), but allow the individual workers to create their own scripts to automate tasks specific to their job functions.
IMO, both of those are good reasons for still maintaining two separate script locations.
-
@peterjones said in PythonScript:
Why do you say that?
I think (but I may be wrong) notepad++ doesn’t install any plugins in AppData\Roaming\Notepad++\plugins anymore. So those folder must be created manually.
-
@cmeriaux said in PythonScript:
I think (but I may be wrong) notepad++ doesn’t install any plugins in AppData\Roaming\Notepad++\plugins anymore. So those folder must be created manually.
It doesn’t install any plugins in that folder. But
%AppData%\Notepad++\plugins\Config\
is still where plugins configuration files go… And for PythonScript,%AppData%\Notepad++\plugins\Config\PythonScript\scripts\
is still the location for user scripts, and even if%AppData%\Notepad++\plugins\Config\PythonScript\
doesn’t exist yet.On my machine where I normally don’t use the AppData (so I don’t have a Notepad++ in the %AppData% hierarchy), I just unzipped a fresh portable, then removed doLocalConf.xml, so that the portable will use %AppData%. I installed PythonScript, and ran Plugins > Python Script > New Script: it defaulted to
%AppData%\Notepad++\plugins\Config\PythonScript\scripts\
… and it did create that folder for me when I saved the new script. (And portable without doLocalConf.xml is the same as a normal installation, as far as using the AppData folder is concerned.) -
@cmeriaux said in PythonScript:
you have to select a script (in user scripts or machine scripts), then the add button become available
I cannot select a script (in user scripts or machine scripts), because both fields are empty
-
@ekopalypse said in PythonScript:
To assign a shortcut, the script must be available in this yellow highlighted area.
On my PC no scripts are available in this yellow highlighted area nor in the user scripts or machine scripts area.
-
@heinz-berecz-0 said in PythonScript:
On my PC no scripts are available in this yellow highlighted area nor in the user scripts or machine scripts area.
The user-scripts area will be empty if you haven’t created any user scripts, so that’s natural. But the machine scripts will only be empty if you had a bad installation of PythonScript, or if you intentionally deleted all the example scripts. But if you can see the sample scripts in the Plugins > Python Script > Scripts > Samples submenu, then they weren’t deleted.
Since sometimes animation helps users see something that simple screenshots do not:
-
@peterjones said in PythonScript:
The user-scripts area will be empty if you haven’t created any user scripts, so that’s natural. But the machine scripts will only be empty if you had a bad installation of PythonScript, or if you intentionally deleted all the example scripts. But if you can see the sample scripts in the Plugins > Python Script > Scripts > Samples submenu, then they weren’t deleted.
How can I uninstall a bad installation of PythonScript?
-
How did you install it in the first place?
If you used the msi package, remove it via the Windows function for removing programmes. Otherwise, do it via the plugin admin of Npp. -
@ekopalypse Thank you, now it works. But a new Script (\plugins\PythonScript\scripts\aa.py) appears in the machine scripts area, not in the user scripts area.
-
How did you create this new script?
Via the plugin menunew script
?
If so, an save dialog should have opened asking you to save the file. Where did it point to? -
@ekopalypse Via the plugin menu new script. The save dialog pointed to D:\N++\plugins\PythonScript\scripts\
-
hmmm … strange, it should point to
D:\N++\plugins\config\PythonScript\scripts
instead.
Could be related to Explorer caching, but not quite sure. -
@ekopalypse Thank you. I copied my script to D:\N++\plugins\config\PythonScript\scripts, now it works.
-
@ekopalypse said in PythonScript:
hmmm … strange, it should point to D:\N++\plugins\config\PythonScript\scripts instead.
Could be related to Explorer caching, but not quite sure.I often prove out scripts I’m about to post by using a “clean” portable N++/PS setup. It makes me crazy that this new setup somehow knows my daily-use directory structure and defaults to this when I am trying to create/save a script. I often make the mistake of saving in my daily-use hierarchy, something I definitely don’t want to be doing.
-
@ekopalypse You have PythonScript Version 3.0.7, my Version is after newly installing the PythonScript plugin 1.5.4
-
@heinz-berecz-0 said in PythonScript:
You have PythonScript Version 3.0.7, my Version is after newly installing the PythonScript plugin 1.5.4
3.x is a pre-release version, if you want it you have to do special things to install it (go to the PS website and manually get it and manually install it).
Installing via Plugins Admin will get you 1.5.4.
-
@heinz-berecz-0 said in PythonScript:
@ekopalypse You have PythonScript Version 3.0.7, my Version is after newly installing the PythonScript plugin 1.5.4
Eko’s example may be that way. But the animation I showed was using PythonScript version 1.5.4, and it worked the way I intended.
I think why you (and Alan) have problems with Windows remembering the “wrong” scripts directory is because (if I understand correctly), some of Windows’ “memory” in the registry for last-opened-folder in the FileOpen or similar windows is based on the name of the application (so in this case
notepad++.exe
), rather than on the full path to the application (c:\program files\notepad++\notepad++.exe
vsx:\some\portable\path\notepad++.exe
for a portable), so Windows may only keep one recently-opened-folder setting for bothnotepad++.exe
. (But that’s a piecemeal memory, nothing with hard data to support that conclusion.) Any time you bring Windows OS into the mix, a new level of confusion arises. ;-) -
@peterjones said in PythonScript:
I think why you (and Alan) have problems with Windows remembering the “wrong” scripts directory is because…
OK… but I’d think that the PythonScript plugin itself should always open its
...\plugins\Config\PythonScript\scripts\
folder as a default, at least from the very first opening.Don’t turn this over to Windows, if that’s truly what is happening.
Again, IMO.
-
@ekopalypse said in PythonScript:
hmmm … strange, it should point to D:\N++\plugins\config\PythonScript\scripts instead.
Could be related to Explorer caching, but not quite sure.The PythonScript plugin always open its …\plugins\Config\PythonScript\scripts\ folder as a default,
if Settings>Preferences>Default Directory>Default Open/Save Directory> is set to …\plugins\Config\PythonScript\scripts\ -
@heinz-berecz-0 said in PythonScript:
The PythonScript plugin always open its …\plugins\Config\PythonScript\scripts\ folder as a default,
if Settings>Preferences>Default Directory>Default Open/Save Directory> is set to …\plugins\Config\PythonScript\scripts\True enough, but only people that write exclusively PythonScripts would want that setting set that way. Not useful to do this, generally.