I've also tried using nuke.scriptReadFile(...) and then running nuke.root().setName(file_path) but it seems that is not possible as it errors out with invalid name. Even if I try to run setName in the script editor once Nuke has launched and feed in exactly the name that is present in the UI it will error out. I don't want to use scriptSaveAs because I don't want to change the file contents on disk...a bit worried an error could corrupt a valid file, plus doing a save during an open operation doesn't feel like a good idea.
Options are dwindling so I may resort to using the external script to accomplish this. On Thu, Mar 13, 2014 at 6:05 PM, Tony Barbieri <great...@gmail.com> wrote: > I'm getting very close but still have one last hurtle to overcome. So I > ended up using the onCreate callback with the flag nodeClass="Root": > > nuke.addOnCreate(on_startup, nodeClass="Root") > > All seems well and the on_startup function is called successfully. The > last issue is I can't seem to get Nuke to open the file in the currently > running session. The code I'm using is: > > nuke.scriptClear() > nuke.Root().setModified(False) > nuke.scriptOpen(*cmd.get("args", [])) > > Even with the scriptClear and the set root unmodified, Nuke still opens a > new session for the file. I thought about using nuke.scriptReadFile(...), > but that would put the file's contents into an Untitled file whereas I need > to have the script open in the session so a user could save normally. > > If all else fails I'll go with the script technique. Ideally I'd like to > not have to go that route because I'm trying to use as similar a technique > across applications as I can. > > Thanks again for any help! > > -tony > > > On Thu, Mar 13, 2014 at 1:48 PM, Tony Barbieri <great...@gmail.com> wrote: > >> Thanks for the replies, both options sound great. Appreciate you taking >> the time! >> >> -tony >> >> >> On Thu, Mar 13, 2014 at 1:04 PM, Brian Hawkins <bhawk...@reald.com>wrote: >> >>> If you want to open a file on launch using your "openfile.py" script, >>> you can run nuke from the command line with your python script as the first >>> argument: >>> >>> >>> >>> eg: >>> >>> "Nuke8.0.exe /path/to/your/script/openfile.py" >>> >>> >>> >>> If you use a python file instead of a nukescript in the command line >>> nuke will run the script as soon as it has run its own startup procedures. >>> >>> >>> >>> *From:* nuke-dev-boun...@support.thefoundry.co.uk [mailto: >>> nuke-dev-boun...@support.thefoundry.co.uk] *On Behalf Of *Tony Barbieri >>> *Sent:* Thursday, March 13, 2014 10:51 AM >>> >>> *To:* Nuke plug-in development discussion >>> *Subject:* Re: [Nuke-dev] Open file on startup >>> >>> >>> >>> The onScriptLoad callback doesn't seem to fire when launching. I'm >>> adding the onScriptLoad callback in the init.py but it doesn't seem to >>> "take" until I open a script after Nuke has launched. Trying to use the >>> onCreate callback also doesn't seem to work as I am trying to open a script >>> while everything is still instantiating. Not really sure how to proceed >>> with this at this point. >>> >>> >>> >>> On Mon, Mar 10, 2014 at 3:29 PM, Tony Barbieri <great...@gmail.com> >>> wrote: >>> >>> Thanks for your reply, Nathan. This seems like the most straightforward >>> way to accomplish this. >>> >>> >>> >>> Thanks again! >>> >>> >>> >>> -tony >>> >>> >>> >>> On Mon, Mar 10, 2014 at 1:06 PM, Nathan Rusch <nathan_ru...@hotmail.com> >>> wrote: >>> >>> The `onScriptLoad` callback runs after the Root's `onCreate` callback, >>> which should be the last `onCreate` to run when a script is loaded. >>> >>> >>> >>> -Nathan >>> >>> >>> >>> *From:* Tony Barbieri <great...@gmail.com> >>> >>> *Sent:* Monday, March 10, 2014 7:58 AM >>> >>> *To:* nuke-dev@support.thefoundry.co.uk >>> >>> *Subject:* [Nuke-dev] Open file on startup >>> >>> >>> >>> Hello! >>> >>> >>> >>> I am trying to open a file on startup by using a custom open method >>> written in python. I am trying to run the open code either in an init.py >>> or menu.py that we use for our facility. Ideally this can happen in the >>> init.py. The code appears to be running correctly but it seems that the >>> file is zeroed out to a default scene due to it running "too early". >>> >>> >>> >>> Is it possible to open a file on Nuke launch without using the standard >>> command-line file flag but do it via python? >>> >>> >>> >>> Thanks! >>> >>> >>> >>> -- >>> -tony >>> ------------------------------ >>> >>> _______________________________________________ >>> Nuke-dev mailing list >>> Nuke-dev@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ >>> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev >>> >>> >>> _______________________________________________ >>> Nuke-dev mailing list >>> Nuke-dev@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ >>> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev >>> >>> >>> >>> >>> >>> -- >>> -tony >>> >>> >>> >>> >>> >>> -- >>> -tony >>> >>> >>> ------------------------------ >>> >>> >>> >>> ****************************************************************************************** >>> This email and any files transmitted with it are confidential and >>> intended solely for the use of the individual or entity to whom they are >>> addressed and may contain confidential and privileged information. No one >>> else is authorized to distribute, forward, print, copy or act upon any >>> information contained in this email. If you are not the intended recipient, >>> please contact the sender by reply email and destroy all copies of the >>> original message. >>> >>> ******************************************************************************************* >>> >>> ------------------------------ >>> >>> >>> ****************************************************************************************** >>> This email and any files transmitted with it are confidential and >>> intended solely for the use of the individual or entity to whom they are >>> addressed and may contain confidential and privileged information. No one >>> else is authorized to distribute, forward, print, copy or act upon any >>> information contained in this email. If you are not the intended recipient, >>> please contact the sender by reply email and destroy all copies of the >>> original message. >>> >>> ******************************************************************************************* >>> >>> _______________________________________________ >>> Nuke-dev mailing list >>> Nuke-dev@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ >>> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev >>> >>> >> >> >> -- >> -tony >> > > > > -- > -tony > -- -tony
_______________________________________________ Nuke-dev mailing list Nuke-dev@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev