[Plugin] Archiver.rb - update

[Plugin] Archiver.rb - update

Postby TIG » Mon Apr 06, 2009 10:50 am

Jeff Hammond wrote:i use autosave but this thread just helped me get a new system i'm going to try out..

i always wished autosave could be set to make sequential files (i.e. autosave_house01, autosave_house02, etc.).. sometimes i like to go further back into a model than what autosave and the current file will provide me with..

a normal save doesn't give me what i want because then you can't go back. 'save as' is what i want but i never really used it because i have to manually type in the sequential numbers..
'save a copy as' however will automatically add the sequential number (ie - house copy, house copy 2, house copy 3).. i just added a shortcut for that command (⇧S) and after a quick test run, it's looking real good..

so yeah, maybe autosave will become a least used function for me :)

A while back I wrote an 'Archiver.rb' [ http://www.crai.archi.fr/RubyLibraryDep ... l_page.htm ] script that adds an extra command into the File menu 'Archiver'. If you pick that - or more readily key in a shortcut to it - it makes a copy of the model exactly as it is at that second and puts it into an 'Archives' sub-folder with the model. It adds the date+time onto the file name - without using any dialogs etc. That way you can quickly save copies of the model as you go along, knowing that you could open any one from a particular time later if needed so no data is lost...

It has to be activated manually BUT adding a timer to it that waited till you weren't doing anything too intensive would be possible.

For the latest version see here viewtopic.php?p=149749#p149749
0
Last edited by TIG on Tue Apr 07, 2009 10:27 am, edited 1 time in total.
TIG
User avatar
TIG 
Global Moderator
 

Re: Least used function of SU

Postby jeff hammond » Mon Apr 06, 2009 4:20 pm

TIG wrote:A while back I wrote an 'Archiver.rb' [ http://www.crai.archi.fr/RubyLibraryDep ... l_page.htm ] script that adds an extra command into the File menu 'Archiver'. If you pick that - or more readily key in a shortcut to it - it makes a copy of the model exactly as it is at that second and puts it into an 'Archives' sub-folder with the model. It adds the date+time onto the file name - without using any dialogs etc. That way you can quickly save copies of the model as you go along, knowing that you could open any one from a particular time later if needed so no data is lost...

It has to be activated manually BUT adding a timer to it that waited till you weren't doing anything too intensive would be possible


oh, that looks perfect. personally, i prefer to do it manually but i've been using autosave to avoid the dialog box and/or needing to enter my own sequence to the file name.. this one key solution with no dialogs is surely the way to go..
unfortunately, the script doesn't work for me :(
it shows up under the plugins menu but when i push it (or the shortcut i assigned to it) nothing is saved.

this is how i had it set up so maybe i was doing something wrong in this department?

made a folder called archiver_test
saved a skp into the folder called archiver_test.skp
modified the skp then clicked Plugins/Archiver
repeated steps 2&3 a few times.

only the original archiver_test.skp was in the folder after that and i did a system wide search for 'archiver_test' and it only found the folder and the skp.

any ideas?
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

Re: Least used function of SU

Postby TIG » Mon Apr 06, 2009 5:26 pm

Jeff

EDIT:
I've looked into it...
Here's an updated version. It failed before probably because another script was setting the 'default directory' to somewhere else: this version now makes sure it's set to be the model's folder (I added line 80)...

I've ### out the user name and confirming dialog - it you want them back then edit the file and go to lines 75 and 87 respectively and remove the initial '###' to have them show...

If you find a load of "archiver_test[nn-nn-nn_nn-nn-nn_XXX].skp.tmp" files - probably in your Plugins folder - then accept my apologies and throw them away !

It now works silently and puts things in the correct places...
EDIT: see v1.7 viewtopic.php?p=147035#p147035
0
Last edited by TIG on Tue Apr 07, 2009 5:24 pm, edited 5 times in total.
TIG
User avatar
TIG 
Global Moderator
 

Re: Least used function of SU

Postby jeff hammond » Mon Apr 06, 2009 5:34 pm

TIG wrote:Jeff

I'll look into it...


sweet, thanks TIG.
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

Re: Least used function of SU

Postby TIG » Mon Apr 06, 2009 6:01 pm

See my earlier post for the fix...viewtopic.php?p=146804#p146804
0
TIG
User avatar
TIG 
Global Moderator
 

Re: Least used function of SU

Postby jeff hammond » Mon Apr 06, 2009 7:06 pm

hmm...
i still can't seem to get this to work

as far as i can tell, the only thing it does is create a folder called '\Archives' directly on my boot disk (not nestled in any other folders)..

i've tried various things with that folder such as placing my .skp directly in there or nestled in it's own model folder.. i've tried moving the \Archives to other locations as well. i've also tried working directly off the desktop (which is my normal method of working anyway - it'd probably be best if i could keep it that way.. have a model folder on my desktop to which the archiver files are added)

when i select File/Open Archives, i get 'NO 'Archives' Folder for 'modelname' ! no matter how many times i tried to archive it.

i'm hoping this isn't a mac thing.. i always feel like such a pest with my OS :D
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

Re: Least used function of SU

Postby TIG » Mon Apr 06, 2009 7:20 pm

Now you tell me it's a Mac !!! That's probably the basis of the problem...
It might be best to go to PM or a new thread ?
Firstly please do a Finder search to locate the rogue .tmp files and chuck them - they should have been with the model and removed as the archive is copied over...
The 'Archives' folder should be in the model's folder. It's made for each model folder. Unless your model is in the root directory it shouldn't be made in there...
Here's a version that writes everything to the ruby console... Open the console, run the Archiver and copy paste the several line of output into a message for me so I can see what's up...
0
Last edited by TIG on Tue Apr 07, 2009 5:23 pm, edited 2 times in total.
TIG
User avatar
TIG 
Global Moderator
 

Re: Least used function of SU

Postby jeff hammond » Mon Apr 06, 2009 7:33 pm

ok, thanks for helping
i found the rogue files (they were placed in the same location as the archive folder .. there were 5or6 of them)

i have to go get my daughter from school right now but i'll do what you're saying when i get back.
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

Re: Least used function of SU

Postby jeff hammond » Tue Apr 07, 2009 12:02 am

ok, here's the output:

/Users/jethro/Desktop/archiver_test2/archiver_test2.skp
/Users/jethro/Desktop/archiver_test2/archiver_test2.skp
\
archiver_test2
nil
archiver_test2[09-04-06_18-57-35].skp
\Archives
\Archives\archiver_test2[09-04-06_18-57-35].skp
Error: #<Errno::ENOENT: No such file or directory - \>
/Library/Application Support/Google SketchUp 7/SketchUp/Tools/Archiver.rb:82:in `chdir'
/Library/Application Support/Google SketchUp 7/SketchUp/Tools/Archiver.rb:82:in `make'
/Library/Application Support/Google SketchUp 7/SketchUp/Tools/Archiver.rb:177


[ps: i put in a request with csaba to break this part of the thread into a new one]
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

[Plugin] Re: Archiver.rb update - v1.7

Postby TIG » Tue Apr 07, 2009 10:20 am

It's as I thought...
A Mac needs / in its file paths...
A PC can have either \ or /, except for 'UI.openpanel' which must have \... [unsure about it for Mac***]
SUp on PC gives paths etc with \ separators, while PC Ruby can take either: I expect that Mac-Ruby uses / always ?
I have rewritten things to trap for this.
It's still working fine on my PC.
I hope it now works on a Mac... since I don't have a Mac please let me know that File -> Archiver AND ***Open Archive are both working - you might need to make some archives and then reopen the model to get the second Menu option to appear...

Note I've removed the 'user' suffix option as it was not that useful anyway and difficult to get/trap cross-platform...

After almost four years a Mac user finally reports a bug with this script !!!

Hopefully it's now properly cross-platform...
0
TIG
User avatar
TIG 
Global Moderator
 

Re: [Plugin] Re: Archiver.rb update - v1.7

Postby jeff hammond » Tue Apr 07, 2009 2:04 pm

TIG wrote:I hope it now works on a Mac... since I don't have a Mac please let me know that File -> Archiver AND ***Open Archive are both working - you might need to make some archives and then reopen the model to get the second Menu option to appear...


awesome! it's working fine now.. this is surely going to be one of my most used rubies..

fwiw, the 'open archive' menu option appears from the get-go and i only have to save an archive in order for the list to appear.. i don't have to save/reopen the model first.

thanks so much!
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby TIG » Tue Apr 07, 2009 2:46 pm

Hooray !

It will require a little 'management' on your part. If you save every 15 minutes of an eight hour day that's 32 copies of your model !
0
TIG
User avatar
TIG 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby jeff hammond » Tue Apr 07, 2009 3:02 pm

TIG wrote:Hooray !

It will require a little 'management' on your part. If you save every 15 minutes of an eight hour day that's 32 copies of your model !


well, that's generally how it is anyway for me but i'm usually just saving to my desktop and though i try to have some sort of naming system for the files, it always gets screwed up about half way through :).. i'm left doing a major clean-up/figuring out what is what every few days.. when i'm at home working on a model, i can stay a bit more organized but i also use sketchup on the job site where it's a lot more hectic - that's where archiver.rb is going to shine i think.

this ruby will actually help me keep organized.. especially once OS X supports .skp files (fingers crossed) and i'll be able to go through the archives via cover flow (ability to flip through full sized previews, iTunes style, without actually opening the file)
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby takesh h » Tue Apr 07, 2009 4:01 pm

Hi TIG,

Another brilliant ruby script from the brilliant mind.
I'm going to add this gem to pushpullbar's Ruby Index, so let me clarify a couple of things before I do that.

1. Should I have the link few posts above as the "definite" version of archiver.rb for now? Can I request Didier Bur to update your archiver.rb in Ruby Library Depot to the above version? It doesn't look like Didier had time to update the site for quite some time.
2. I always thought "_" is more common (less problematic) divider than "-" in file names, is there any specific reason you chose "-" as a default divider?

Thanks in advance.
0
User avatar
takesh h 
 

Re: [Plugin] Archiver.rb - update

Postby jmmad » Tue Apr 07, 2009 4:07 pm

Thxs Tig !
Life saver plugin :sketchstatic:
Now i can travel back in time
0
Get Upa !

jmmad 
 

Re: [Plugin] Archiver.rb - update

Postby TIG » Tue Apr 07, 2009 5:21 pm

takesh h wrote:Hi TIG,

Another brilliant ruby script from the brilliant mind.
I'm going to add this gem to pushpullbar's Ruby Index, so let me clarify a couple of things before I do that.

1. Should I have the link few posts above as the "definite" version of archiver.rb for now? Can I request Didier Bur to update your archiver.rb in Ruby Library Depot to the above version? It doesn't look like Didier had time to update the site for quite some time.
2. I always thought "_" is more common (less problematic) divider than "-" in file names, is there any specific reason you chose "-" as a default divider?

Thanks in advance.

v1.7 is the best one - link to that. Didier can add v1.7 if he wants to...
It's easy to change the separators - edit the file and make sep="_" or whatever text you want that's allowed in filenames. The only advantage is that in the filename "model[yy-mm-dd_hh-mm-ss].skp" the date and time are more easily read separated by the _. You could even use sep="" and get "model[090407_072210].skp"... It's easily adjustable to suit your own whims...
0
TIG
User avatar
TIG 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby takesh h » Tue Apr 07, 2009 5:31 pm

Thanks for explanation, that makes whole a lot of sense.
I'll forward the link to Didier Bur. :thumb:
0
User avatar
takesh h 
 

Re: [Plugin] Archiver.rb - update

Postby takesh h » Wed Apr 08, 2009 3:38 am

TIG,

It's online now.
http://www.pushpullbar.com/forums/ruby- ... post146070
If there is anything wrong with my review, please don't hesitate to tell me.
Thanks a bunch.
0
User avatar
takesh h 
 

Re: [Plugin] Archiver.rb - update

Postby jeff hammond » Sat Apr 11, 2009 4:09 pm

just reporting back after a week or so of using archiver.

this plugin is awesome!

thanks again TIG.
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby TIG » Mon Apr 13, 2009 7:26 pm

Glad its useful...

If anyone else has any feedback (even critical !) please let me know...
0
TIG
User avatar
TIG 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby Jim » Wed Apr 15, 2009 1:28 pm

TIG wrote:Glad its useful...

If anyone else has any feedback (even critical !) please let me know...


What happens if you open an archived model, then use archiver again? Does the date-stamped filename get longer, or does the date-stamp get updated?

Also, a good option may be to have a "branch" option. Branching would prompt for a new filename and save the model under that name. A branch might be used to experiment with variations in a model, then allow to switch back and forth between branches.

Personally, I have turned off SketchUp Auto-save and am in the habit of hitting Ctrl-s (save) to save the model. So, maybe it could be tied to the built-in Model > Save through the onSaveModel ModelObserver.

Just thoughts - I would consider it an essential plugin as it is. Thanks.
0
Hi

Jim 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby TIG » Wed Apr 15, 2009 1:57 pm

If you open an archive and modify it and then archive it you will get another date-time stamp added to the end of its name, in another Archives folder within the original Archives folder... I'd recommend copying archives rather than using them direct since saving alterations overwrites the earlier version. That way you know which version of the model you are working on but keep the original archive unchanged... You can always open an archive and save_as Model-Option-B etc...

Your 'branch' option is called 'design options' in Revit... At the moment you will need to save as a number of models and archive each as desired... Your 'Archiver+Option' would archive the current Model.skp make /Archives/Model[yy-mm-dd_hh-mm-ss].skp and then open a save_as dialog with suggested incremented option name - e.g. Model[Option-01].skp - you could always change what's inside the []. Work on that version and make archives etc as usual. Then perhaps you decide that you want to explore another variant... pick 'Archiver+Option' again - it then spots the [] on end of the name and suggests a save_as with an incremented name - e.g. Model[Option-02].skp etc etc... Option-01 to Option-99 would be the typical range...

I'll see what I can clobber together... watch this space...
0
TIG
User avatar
TIG 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby Jim » Wed Apr 15, 2009 2:19 pm

Well, as I said these are just ideas from a casual user, and things I don't strictly "need." Maybe some power-users can give more input.
0
Hi

Jim 
Global Moderator
 

Re: [Plugin] Archiver.rb - update v1.8

Postby TIG » Wed Apr 15, 2009 5:42 pm

Here's v1.8

It now has an extra menu option 'Archive Option'.
This archives the file and then gives you a 'save_as' dialog -
with the default new option's file-name entered as "Model[Option-01].skp" ..-02] etc.
This 'option' 'number' is based on the highest value option found in the model's folder.
You can overwrite an existing file if desired (you will be warned 1st).
The current active model-window now opens with the latest option you have just saved.
If you save a model as an 'option', then to be recognised as such it should have its name in the format "Model[Option-nn].skp" - it must have the surrounding "[..]" and a separating "-" between the number and any text; the string "Option" could be set in the save_as dialog to say something else, BUT since new options always use "[Option-nn]" anyway it's recommended to leave it unchanged.

Please test and feedback...
0
TIG
User avatar
TIG 
Global Moderator
 

Re: [Plugin] Archiver.rb - update v1.9

Postby TIG » Thu Apr 16, 2009 11:54 am

Here's v1.9
Minor change to 'Archive Option' - the original model is now saved immediately before it is archived and then saved as an Option.

Usage:
    Pick 'Archiver' to make an archive copy of the current model.
    It saves the model (in its current state) into a sub-folder
    within the model's folder called 'Archives'. It's named with
    a [suffix] - date (yy-mm-dd_hh-mm-ss),
    e.g. Model[09-12-18_12-34-56].skp.
    The separators can be customized from '-' to '_' etc,
    just change one line - sep="-" to sep="_" etc...
    If later on you don't save the main model with those changes
    then that archive copy still has those changes current at the
    time of the archiving.

    If there is an 'Archives' folder then an extra 'File' menu
    item is added - "Open Archives"...

    'Archive Option' is an additional function that saves the model as it
    stands - say 'Model.skp' - then it makes an archive of it - say
    'Model[09-04-16_12-25-05].skp' and then opens a 'save_as' dialog in
    which it will have preset the next available unused Option name - say
    'Model[Option-01].skp' - which you are prompted to save_as: you can
    choose to overwrite an earlier option if desired - if so you are
    warned about overwriting it. The Options are kept in the same folder
    as the original. It is recommended that you do not change the naming
    convention... The model is then saved. The current SketchUp window
    then shows this latest Option.
    Options can be archived in the same way as other models - in the
    example above the archive's name might then be
    'Model[Option-01][09-04-16_12-30-55].skp'...
    If you subsequently use 'Archive Option' on an 'Option' itself it then
    names the new Option with the next available free Option name - in
    this case it would 'Model[Option-02].skp' and the process repeats...
    It uses the [-] characters as separators so don't change the Option's
    name if you want it to be recognised as one by 'Archive Option'.
Feedback please...
0
TIG
User avatar
TIG 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby jeff hammond » Fri Apr 17, 2009 3:49 pm

i'm not sure if i'm using 1.9 properly but here's what i'm getting...

it works the same as 1.7 in that if i select file->archiver, a archive will be created in a new folder inside the main model's folder.. file->open archives will allow me to search through/open files in the archive folder..
everything is fine there..

now,
if i select file->archive option it works exactly the same as when i use file->archiver except i now have a .tmp (ex- 1239979595.tmp) file saved in the main model's folder. no dialogs or options etc..
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby TIG » Fri Apr 17, 2009 4:55 pm

Sounds like a Mac problem [again]. Works fine on PC. Please run it with the Ruby Console open and report the error you get. The .tmp file is made so that the original and newly named copy can swap over - that's failing...
0
TIG
User avatar
TIG 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby jeff hammond » Fri Apr 17, 2009 5:12 pm

here's the error message:

Error: #<Errno::ENOENT: No such file or directory - \Users\jethro\Desktop\ARCHIVER_TEST\>
/Library/Application Support/Google SketchUp 7/SketchUp/Tools/Archiver.rb:214:in `open'
/Library/Application Support/Google SketchUp 7/SketchUp/Tools/Archiver.rb:214:in `entries'
/Library/Application Support/Google SketchUp 7/SketchUp/Tools/Archiver.rb:214:in `option'
/Library/Application Support/Google SketchUp 7/SketchUp/Tools/Archiver.rb:255



that is after i have a model folder (ARCHIVER_TEST) with a couple of archives saved (they are in a folder created by the ruby called 'Archives' which resides inside the main folder.

it's looking like \ vs. / again?
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

Re: [Plugin] Archiver.rb - update - v2.0

Postby TIG » Fri Apr 17, 2009 5:19 pm

It was \ versus / ! I suspected it - I have made an error in one step in the sub-routine for 'option'. I have just redone all of the path bits to ensure PC/Mac compatibility...

Here's v2.0 - it works OK on my PC AND should now work on your Mac too...

Sorry for the problem - I don't have access to a Mac to test this, so please report back...

For the latest version please see the PluginStore

Download

0
TIG
User avatar
TIG 
Global Moderator
 

Re: [Plugin] Archiver.rb - update

Postby jeff hammond » Fri Apr 17, 2009 5:52 pm

ok, that fixed it..

i only had a quick look at it as i'm about to leave for the day but it looks like there will only be one archives folder created now and i can view all the files related to the main folder via 'Open Archives'.

is that correct? if so, i like it!

i'll be able to check it out more thoroughly tonight but it's looking like a nice improvement.

thanks
0
dotdotdot
User avatar
jeff hammond 
Global Moderator
 

SketchUcation One-Liner Adverts

by Ad Machine » 5 minutes ago



Ad Machine 
Robot
 

Next


 

Return to Plugins

Who is online

Users browsing this forum: ntxdave, thinga, zul6041 and 26 guests

Visit our sponsors: