How to save 1000+ fills at once?
-
Hi there.
I have over 1000+ txt files that I have been using for several years.
I can save them via Ctrl + Alt + S, but I have a problem with having to click the save button each time.
Is there a way to just click and have all the files saved to a specific directory or to Notepad’s backup directory?
Thank you.
-
The only good way I can think of to achieve this is via a bit of scripting; here’s a script snippet showing the base logic:
folder_for_save = r'C:\TEST__SaveABunchOfNewXFiles' if not os.path.isdir(folder_for_save): print('folder does not exist: "{}" -- aborting!'.format(folder_for_save)) else: for (pathname, buffer_id, index, view) in notepad.getFiles(): if os.path.isfile(pathname): continue path_for_save = folder_for_save + os.sep + pathname + '.txt' if os.path.isfile(path_for_save): continue notepad.activateFile(pathname) cfn = notepad.getCurrentFilename() if cfn != pathname: print('switching to "{}" for saving was not successful -- skipping!'.format(pathname)) continue notepad.saveAs(path_for_save) -
…although if you’re already using a scripting language to automate this process as AlanKilborn suggested, you should probably just be using the scripting language to work directly with massive numbers of files, rather than getting Notepad++ involved.
-
@Mark-Olson said in How to save 1000+ fills at once?:
…although if you’re already using a scripting language to automate this process as AlanKilborn suggested, you should probably just be using the scripting language to work directly with massive numbers of files, rather than getting Notepad++ involved.
We really don’t know what OP is doing.
We trust OP knows what they are doing and has “good procedures” in place. :-)
We just try to answer what is asked, and provide workarounds when Notepad++ itself doesn’t meet the requested need. -
Hi, @Alan-Kilborn
Thanks for the answer!
After installing the Python Script plugin, I just changed the path in the script you commented, saved it to startup.py and ran it, but it didn’t work.
Is this script just a sample? I don’t have any programming knowledge so I’m not sure.
Thank you!
-
@Junuk-Seo said in How to save 1000+ fills at once?:
I just changed the path in the script
Good.
saved it to startup.py
Not sure why you would do this. You should give the script its own file (suggest:
SaveABunchOfNewXFiles.py) and run it on-demand from the PythonScript menu when you need it.Is this script just a sample?
Yes, the intent was to just show the relevant logic.
A complete, runnable script is:
# -*- coding: utf-8 -*- from __future__ import print_function from Npp import * import os folder_for_save = r'C:\TEST__SaveABunchOfNewXFiles' if not os.path.isdir(folder_for_save): print('folder does not exist: "{}" -- aborting!'.format(folder_for_save)) else: for (pathname, buffer_id, index, view) in notepad.getFiles(): if os.path.isfile(pathname): continue path_for_save = folder_for_save + os.sep + pathname + '.txt' if os.path.isfile(path_for_save): continue notepad.activateFile(pathname) cfn = notepad.getCurrentFilename() if cfn != pathname: print('switching to "{}" for saving was not successful -- skipping!'.format(pathname)) continue notepad.saveAs(path_for_save)If it still doesn’t work, check the PythonScript console window for any odd output.
Maybe this FAQ helps you with the basics of scripting.
-
Hi, @Alan-Kilborn
I followed guide as you pointed out and finally got the script running!
However, I am getting the error “‘Please check whether this file is opened in another program’”.
I tried many ways to solve this problem.
Running in admin mode, removing dependencies connected to Winscp, stopping anti-virus programs, closing all windows except notepad …v…v
But none of that worked.
Is there some permission in the script that I need to set that I’m not aware of?
Or is this just something wrong with my windows?Thank you.
-
@Junuk-Seo said in How to save 1000+ fills at once?:
I am getting the error “‘Please check whether this file is opened in another program’”.
This doesn’t make sense as the assumption was that the files are all
new 1,new 2, etc files (as otherwise all you need to do is a Save All), and thus these “files” could not be open in another program. Perhaps that was a bad assumption.