-
-
Save rbrito/e57c87d5376fd56113df058abf71bdf3 to your computer and use it in GitHub Desktop.
#!/usr/bin/env python | |
# Original (by yahvuu): http://www.gimpusers.com/forums/gimp-developer/11718-autosave-plugin | |
import tempfile, os | |
from time import * | |
from gimpfu import * | |
def autosave(image, layer): | |
backupInterval = 10 * 60 | |
backupFiles = {} | |
print "Autosave activated" | |
while 1: | |
sleep(backupInterval) | |
print ctime(time()) | |
curImages = {} | |
for k in gimp.image_list(): | |
curImages[k.ID] = k | |
curIDs = curImages.keys() | |
oldIDs = backupFiles.keys() | |
newIDs = [x for x in curIDs if x not in oldIDs]; delIDs = [x for x in oldIDs if x not in curIDs]; | |
# create (empty) backup files for new images | |
for id in newIDs: | |
prefix = 'gimpbackup-ID' + str(id) + '-' | |
fn = tempfile.mkstemp(prefix = prefix, suffix = '.xcf') | |
os.close(fn[0]) | |
backupFiles[id] = fn[1] | |
# remove closed images' backups | |
for id in delIDs: | |
filename = backupFiles[id] | |
del(backupFiles[id]) | |
try: | |
os.remove(filename) | |
except: | |
print "ERROR: ", sys.exc_info()[0] | |
# backup images | |
for id, filename in backupFiles.iteritems(): | |
img = curImages[id] | |
try: | |
print "saving " + img.name + '-' + str(id) + ' to ' + filename | |
pdb.gimp_xcf_save(1, img, img.active_drawable, filename, filename) | |
except: | |
print "ERROR: ", sys.exc_info()[0] | |
register( | |
"autosave", | |
"Autosave dirty hack", | |
"Periodically saves all opened images to a %temp% directory", | |
"public domain", | |
"public domain", | |
"2016", | |
"<Image>/File/Activate Autosave", | |
"*", | |
[], | |
[], | |
autosave) | |
main() |
is there any way to make the autosave feature happen more frequently?
just curious i stopped using gimp after getting tired of crashes.
i just use a portable version of photoshop now. much better ui imo.
is there any way to make the autosave feature happen more frequently?
Edit gimp-autosave.py with Notepad or VSCode and replace 10 with prefered number...
backupInterval = 10 * 60 to backupInterval = 5 * 60
But... Real question is why your Gimp crashes so often?
my slow ass pc is the only reason i can think of.
i7 5500u
8gb ram
gt 840m
dont be fooled by the i7 and gt. look up their specs. id prefer a i3 over this laptop.
This claims to work for 2.8 but I haven't been able to get it to show up after installing... Help?
plugin not working on linux, i mean activate auto save option not showing even after installed in system as well as in home path.
plugin not working on linux, i mean activate auto save option not showing even after installed in system as well as in home path.
And also as much as i know only windows detect directories in %temp% way, linux use / as directory finder (~/ for home directory)
TEMP FOLDER for Windows 10
From the Start menu, open the Run dialog box or you can press the "Window + R" key to open the RUN window.
Type "%temp%" and click on the OK button.
In my case TEMP folder location:
C:\Users\username\AppData\Roaming\GIMP\2.10\tmp
...
Every 10 minutes (backupInterval = 10 * 60) the script saves backups of all opened images to a TEMP folder.
The backup files won't be deleted when GIMP exits, so some manual clean-up will be required from time to time.
...
How to add .py script to Gimp:
Gimp > Preferences > Folder > Plug-ins
Select > C:\Users\username\AppData\Local\Programs\GIMP 2\lib\gimp\2.0\plug-ins
Click icon "Show file location in the file manager" .
Paste gimp-autosave.py in that folder.
Close Gimp
Open Gimp
Menu > File > Activate Autosave (activate only once)
...
Script works for me.
GIMP 2.10.24 (revision 2)
Windows 10