Sorry about taking so long to reply, its been a busy week.
Well first of all thanks for spending some time to talk about usability, and i am open to make changes to the plugin on the on-boarding process of it.
Yeah i am going to make these changes as per suggestion next time i make changes in the repo.
I never addressed this because it is a PyCharm thing not a feature of my plugin. All it does it change the behavior the run and debug buttons for this configuration in PyCharm. If
Single Instance Only is not checked every time you hit the debug button, it starts a new debugger, instead of restarting a already existing one.
This simply just lets you provide some a file or some code that MayaCharm will execute in Maya after the debugger is fully attached. I often write my scripts with a
if __name__ == "__main__":
like statement at the end which allows them to be executed by either executing the whole python file, or via importing and running the appropriate function. So the file option lets you define a file to run after the debugger is attached, and the code one lets you define how to import and run your code if you prefer to do it that way. I am actually adding a 3rd option on the next build which will only attach the debugger and take no further action.
Correct, and it is a option of the python remote debugger its self not this plugin.
These are one and the same, when suspend after connect is set, it is the same as hitting a breakpoint on the very first line of code executed after attaching the debugger. In the case of this plugin that first line is actually in the temp file i use to pass code to Maya. I personally do not use this option but i guess it could be useful for those that
want to suspend there script immediately and step through all lines of code instead of strategically placing breakpoints.
If you have PyCharm Pro there is no use vsdr at all for the Runner, since everything it does the Debugger can do as well.
Alt+A and Alt+S are just tied to the Execute Document and Execute Selection in Maya actions, these same actions exist in the
Run menu and can be rebound.
Yes the intent is that when you setup a debugger, it will attach the debugger and automatically run the code or file you defined, and that the
Execute Document in Maya and
Execute Selection in Maya actions are meant for executing code in PyCharm in maya via the command port.
For any of this to work, you do need the plugin properly configured and you do need the code snippet MayaCharm gives in Maya and run so there is a open CommandPort i can use to communicate with Maya, but if the debugger is properly attaching without you manually called settrace in maya that means the commandPort is open.
if you are still having issues i could try and screencap my process from scratch, install to having it working and hitting breakpoints on a script, but this thread has been pretty exhaustive and has led me to some good changes i will make for the future.
Thinking it would be great for the community to take all of these info at some-point in the future and make a proper pdf outlining in detail the whole process, or simply adding more of it to my readme.md.