Giter VIP home page Giter VIP logo

mayacharm's People

Contributors

cia-rana avatar cmcpasserby avatar j0yu avatar theflipbook avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mayacharm's Issues

MayaCharm not working in Community Edition, Active Maya SDK is blank

Running Windows 7, PyCharm 2018.3 Community Edition, latest MayaCharm, Maya 2019.2

I put C:\Program Files\Autodesk\Maya2019\bin in my path, restated and launched Maya and PyCharm. In Settings, the MayaCharm window is blank...doesn't show any active Maya SDKs. Path to bin is accurate since I'm able to launch Maya by typing 'maya' into Start\Run in Windows. Other users on YouTube have reported this same issue, specifically with Community Edition.

Maya Log window not working on Linux based system

The log window not working on linux based system. No text is shown as output of the commands (for example the output shown in the script editor)

Using fedora 23 with maya 2016 SP3, and using openjdk version "1.8.0_91"

REQUEST: Add 'Reload Document in Maya' menu command

I would like to be able to reload the active PyCharm document in Maya. This would be very useful to allow me to modify Python and Mel documents in PyCharm and reload() OR source "" them in Maya without having to manually execute commands in the Maya script editor. This could hopefully be done by sending a command string to Maya in a similar way to how the current MayaCharm 'Execute Document in Maya' behaves.

Preferred Behavior (pseudo code):
If active PyCharm document is a Python file, import and reload in Maya to catch cases where the py file had not been imported yet:

import(<moduleName>)
reload(<moduleName>)
print "Reloaded <moduleName>"

If active PyCharm document is a Mel file, source it and print out what was sourced in Maya:

mel.eval('source "<melAbsPath>"');
print "Sourced <melAbsPath>";

Can not debug if maya is started with command line arguments

If maya is started with commandline arguments then the debug functionality in PyCharm does not work. It does not find the maya executable.

Steps to Reproduce:

  1. Start Maya with the following command line parameter
    C:\Program Files\Autodesk\Maya 2017\bin\maya.exe -hideConsole
  2. Make sure correct command port is active in maya
  3. Running a script from PyCharm works properly
  4. Try debugging the script. It shows the following error.
    11:48 AM MayaCharm: no running Maya Instance for "C:\Program Files\Autodesk\Maya2017\bin\maya.exe" found

It seems like the it could be a bug in ProcessUtils in kotlin. Not sure.

I am using the latest version of MayaCharm 3.0 with PyCharm Professional 2018.3 and Maya 2017 Update 5

Mayacharm no longer working in debug mode for Pycharm 2019.2

After ugrading to PyCharm 2019.2 Debug mode no longer works.

Non-debug mode is fine but debug produces the following errors in this order:

# Traceback (most recent call last):
# TypeError: 'NoneType' object is not callable
#     r = r.decode('utf-8')
#   File "C:/Program Files/JetBrains/PyCharm 2019.2/helpers/pydev\_pydevd_bundle\pydevd_comm.py", line 294, in _on_run
#     r = r.decode('utf-8')
#   File "C:/Program Files/JetBrains/PyCharm 2019.2/helpers/pydev\_pydevd_bundle\pydevd_comm.py", line 294, in _on_run
#   File "C:/Program Files/JetBrains/PyCharm 2019.2/helpers/pydev\_pydevd_bundle\pydevd_comm.py", line 199, in run


# Traceback (most recent call last):
# TypeError: 'NoneType' object is not callable
#     try:
#   File "C:/Program Files/JetBrains/PyCharm 2019.2/helpers/pydev\pydevd.py", line 133, in _on_run
#     try:
#   File "C:/Program Files/JetBrains/PyCharm 2019.2/helpers/pydev\pydevd.py", line 133, in _on_run
#     def run(self):
# TypeError: 'NoneType' object is not callable
#     self.py_db.check_output_redirect()
#   File "C:/Program Files/JetBrains/PyCharm 2019.2/helpers/pydev\pydevd.py", line 175, in _on_run
#     self.py_db.check_output_redirect()
#   File "C:/Program Files/JetBrains/PyCharm 2019.2/helpers/pydev\pydevd.py", line 175, in _on_run
#     def run(self):
#   File "C:/Program Files/JetBrains/PyCharm 2019.2/helpers/pydev\_pydevd_bundle\pydevd_comm.py", line 199, in run

# Traceback (most recent call last):
# TypeError: 'NoneType' object is not callable
#     r = r.decode('utf-8')
#   File "C:/Program Files/JetBrains/PyCharm 2019.2/helpers/pydev\_pydevd_bundle\pydevd_comm.py", line 294, in _on_run
#     r = r.decode('utf-8')
#   File "C:/Program Files/JetBrains/PyCharm 2019.2/helpers/pydev\_pydevd_bundle\pydevd_comm.py", line 294, in _on_run

2020.1 Support

Hello!
It seems that 2020.1 is not yet supported. In 2020.1 the execute commands buttons in the menu remain greyed out.

Maya connection refused

I have attached to the maya process and started the command port.
I see execute in maya as a run configuration.

I can reach the commandport (from a browser, maya repeats the HTTP header) but when i try to execute in maya from pycharm I get a "Maya connection refused error"

I dont think its firewall related, my pycharm can connect to other servers.

Debugging Maya userSetup.py at startup?

I'm trying to debug our Python code at Maya startup time, in userSetup.py files. With no support for Maya debug configurations, I put a confirmDialog() at the top of userSetup.py, to give me a chance to do the Attach to Process... in PyCharm. However, the attachment won't happen while the confirmation dialog is up. I tried adding a call to maya.utils.processIdleEvents() and a second confirmDialog() after doing the attachment, in hopes that might help, but no.

I'm not sure if the UI confirmDialog() is preventing handling whatever port communication PyCharm is making to the process to connect to the debugger, or if it is simply not attachable until later in startup, after userSetup.py has finished. Is there a way to debug breakpoints in userSetup.py code in the Maya GUI app?

Run/Debug with MyaCharm does not save file

When running code with MayaCharm (debug / run) file is not saved (it happens when running without MayaCharm so if 'mark modified tabs with asterisk' is not turned on (and it is not by default) user does not know what he/she executes.

mayaCharm-2019.3_support Fail to load plugin descriptor

Hi, I'm having trouble installing the mayaCharm-2019.3_support branch getting the following error
"Fail to load plugin descriptor from MayaCharm-2019.3_support.zip"
I'm installing it by going to Plugins > Install Plugin from Disk

I have unziped the file and the Plugin Content don't seem to mach what is listed on the following page for how a plugin should be structured.

Am I doing something wrong?

No output from Print Statement

No output from Print statement when running in PyCharm using MayaCharm I could create polygon objects from PyCharm to Maya but I'd like to have some output for its' translation information. What did I miss it?

Using a simple print statement ("Hello World" ) did not show up on debug console nor file.

Debugger timing out on Attach to Process...Mac OS

Hi - I am having difficulty getting PyCharm to connect with Maya via MayaCharm on the Mac. Here are the specs:

MacOS Mojave (10.14.6)

Maya 2019.2

PyCharm Professional 2019.2.6

MayaCharm 3.1.1

I have the correct python interpreter within the MayaCharm preferences set to:
/Applications/Autodesk/maya2019/Maya.app/Contents/bin/mayapy

I have updated my userSetup.py to include the following commands:

import maya.cmds as cmds

if not cmds.commandPort(':4434', query=True):
    cmds.commandPort(name=':4434')

When I use "Run -> Attach To Process" the following is executed:

Applications/Autodesk/maya2019/Maya.app/Contents/bin/mayapy /Applications/PyCharm.app/Contents/helpers/pydev/pydevd_attach_to_process/attach_pydevd.py --port 51087 --pid 26474

Process finished with exit code 0
Server stopped.

Then Maya hangs and I have to quit out of PyCharm. I've tried different port numbers (6001) thinking it might be some security restriction on Mojave but to no avail.

Any help or ideas would be awesome!

Thanks,
Tim

unicode cant work

confirm = cmds.confirmDialog(title='更新', icon='warning', message="更新前请确定已经保存好场景了",button=['是','否'],defaultButton='否', cancelButton='否',dismissString='否')

code like this,i use chinese or japanese that in unicode,then i run it from pyCharm
the maya output

line 1: SyntaxError: file line 1: Non-ASCII character '\xb8' in file C:/Users/ELMAGN~1/AppData/Local/Temp/MayaCharmTemp12387148987302551673.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details #

if i just use the command in maya script,it work fine.

so maybe could u add a unicode ,gbk or some other encode method in pluggin settings?

mayaCharm worked with pyCharm 2018 but not 2019

I was using PyCharm 2018.2, and MayaCharm worked nicely.
Recently I upgraded to PyCharm 2019.2, and for some reason I can’t get PyCharm to to connect to Maya. I’m on Windows, running maya 2018.5, PyCharm 2019.2, and MayaCharm 3.0.2
I get this error:
no running Maya Instance for "C:\Program Files\Autodesk\Maya2018\bin\maya.exe" found

I am still able to debug using my old setup and MayaCharm 2018.2, so I was looking at the differences. The old (working) configuration was of type "MayaCharm Runner". This type doesn't exist any more, we have instead a "MayaCharm" configuration type with different information fields to fill in. I don't know whether these types come from pyCharm or MayaCharm, so I'm attaching screen shots of the two.

Also I got a popup suggestion I install MayaCharm Debug Config Factory. Sounds good but I don't know what that is and can't find it anywhere. I attached the a screen grab of the popup.

If you know what I'm doing wrong, please let me know!

factorPlugin
OldWorkingDebug
NewNotworkingDebug

please write a document ,how to use it

please write a document ,how to use it, like:
which version of pycharm maya require, 32bit or 64bit
pycharm project interpreter settings?

host name is 'localhost' or '127.0.0.1'?

buffer size? script tpye? eg:
import maya.cmds as cmds
cmds.commandPort(name= '127.0.0.1:1234', bufferSize = 128000, stp='python')

thanks!

PS: it does not work for pycharm5. , maya2013
tried to run?
import maya.cmds as cmds
def main( ):
cmds.polyCube()
#for ii in dir(cmds): print ii

if name == 'main':
main( )
get error info:
Traceback (most recent call last):
File "test.py", line 13, in
main( )
File "test.py", line 8, in main
cmds.polyCube()
AttributeError: 'module' object has no attribute 'polyCube'

Attach to process launched by batch file.

Windows 10, PyCharm 2019.2.5 Professional, MayaCharm 3.1.1, Maya 2019.

If I launch Maya 2019 directly (double-click on maya.exe, or from search bar or any other method), in PyCharm the Run->Attach to Process... command finds it, shows it in a separate ----Maya-- section as "1234567 maya", etc.

But our studio pipeline launches Maya from a batch file, from a line like "C:\Program Files\Autodesk\maya2019\bin\maya.exe". In this case, Attach to Process does not see it, although Task Manager doesn't seem to show any obvious difference in the two Maya processes - Process name and Command line are identical, for instance.

Is there something about how MayaCharm looks for Maya processes that would be failing in the batch-launch scenario?

Connection Script Discussion

Why

I made a script to go between all the computers I work on.

Switching computers that have different versions of maya end up getting different ports; so putting the connection script wasn't working out so well using :

import maya.cmds as cmds

if not cmds.commandPort(':4434', query=True):
    cmds.commandPort(name=':4434')

Rather than setting the port manually I usually let the mayacharm plugin choose the ports for me. So the ports changed if there was more than one version of maya. (on my laptop I have 2015 and 2018)

Usage

This is initiated from userSetup.py; variables set in there become ingested into maya's globals. Then when Im in maya i can just run mayacharm.connect() in maya's command line.

Limitations

The script assumes:

  • the latest PyCharm settings is the only one to use
    • the latest found is by globbing for mayacharm.settings.xml
  • we only connect to matching sdks using MAYA_LOCATION which is usually the bin folder

Questions

I'd like to discuss how we can implement this into this repo. Or possibly create another that stores this script. And if your plugin could point to download it.

Scripts

userSetup.py

from mayacharm import MayaCharm
mayacharm = MayaCharm()

mayacharm.py

import glob
import re
import os
import sys
import maya.cmds as cmds
import logging
from xml.etree import ElementTree

log = logging.getLogger("MayaCharm")

PLATFORM = sys.platform

# PyCharm allows a configuration path to be set.
# Add our own environment variable to to override where we look
PYCHARM_CONFIG_PATH = "PYCHARM_CONFIG_PATH"
# regex to get find pycharm version from a path


MAYA_VERSION = cmds.about(version=True)
MAYA_LOCATION = os.path.abspath(os.environ["MAYA_LOCATION"])
PORT_FORMAT = "mayaCharm:{port}"


class MayaCharm(object):
    def __init__(self, auto=False, product="PyCharm"):
        """Helper class to auto connect to mayaCharm, a plugin for pycharm

        https://github.com/cmcpasserby/MayaCharm

        Args:
            auto (bool): automatically connect on creation
            product (str): allow other JetBrains application to send commands.
                            `Defaults to PyCharm`

        """
        self._port = None
        self._port_name = None

        self._product = product
        self.__product_version_re = re.compile("""
            [/\\\\] # wrapped in a path
            [.]? # only macOS doesnt start with a "."
            {product} # <PRODUCT>
            (\d+(?:[.]\d+)?) # <VERSION>
            [/\\\\] # wrapped in a path
        """.format(product=self._product),
            re.VERBOSE)

        # Optionally allow users to not check the settings at startup
        if auto:
            self.connect()
    
    def _get_port(self):
        """Try to determine the port configured in mayacharm settings

        Returns:
            int: Port number

        """

        ###################
        # Get Preferences #
        ###################

        # https://www.jetbrains.com/help/pycharm/directories-used-by-the-ide-to-store-settings-caches-plugins-and-logs.html

        # All platforms are stored in the user directory
        if PLATFORM == "win32":
            glob_path = "%userprofile%"
        else:
            glob_path = "~"

        # Override the path if the environment variable is set
        if PYCHARM_CONFIG_PATH in os.environ:
            glob_path = os.environ[PYCHARM_CONFIG_PATH]

        elif PLATFORM == "darwin":
            # mac
            # config dir is name of product under the users Library
            glob_path += "/Library/Preferences/{product}*"
        else:
            # windows|linux
            # config dir is directly under user folder and precedes with a `.`
            glob_path += "/.{product}*/config"


        # Find in sub directory
        glob_path += "/*/mayacharm.settings.xml"
        # Translate user folder
        glob_path = os.path.expanduser(glob_path)
        glob_path = os.path.expandvars(glob_path)
        # Add the product back in.
        glob_path = glob_path.format(product=self._product)
        glob_paths = glob.glob(glob_path)

        if not glob_paths:
            log.error("Could not find any settings")
            return

        mayacharm_settings = {}

        for maya_charm_settings_path in glob_paths:
            match = self.__product_version_re.findall(maya_charm_settings_path)
            if match:
                mayacharm_settings[float(match[0])] = maya_charm_settings_path

        if not mayacharm_settings:
            log.error("Unable to determine version settings")
            return

        ########################
        # Evaluate preferences #
        ########################

        # PyCharm version high -> low
        ordered_versions = sorted(mayacharm_settings.keys())
        ordered_versions.reverse()
        # Let the user know if were using assumed old settings
        latest_version = ordered_versions[0]

        for version in ordered_versions:
            tree = ElementTree.parse(mayacharm_settings[version])
            root = tree.getroot()
            for sdk_info in root.iter("SdkInfo"):
                sdk = {}
                for option in sdk_info.iter("option"):
                    key = option.get("name")
                    value = option.get("value")
                    sdk[key] = value

                if "mayaPyPath" not in sdk and "port" not in sdk:
                    continue

                py_path = sdk["mayaPyPath"]

                if MAYA_LOCATION in py_path:
                    if version != latest_version:
                        log.info("Settings found in an older "
                                 "version of {product}. Version "
                                 "used is {version}. "
                                 "Latest is {latest_version} ".format(
                            product=self._product,
                            version=version,
                            latest_version=latest_version))
                    return sdk["port"]

    def is_opened(self):
        if self._port is None:
            return False
        return cmds.commandPort(self._port_name, query=True)

    def connect(self, refresh=False):
        """Connect to the existing port.

        If a port is found, it is cached and used for subsequent connections.
        If the settings have changed use `refresh` to update it.

        This is done to reduce the amount of system calls

        Args:
            refresh: Forces a reread of all mayacharm configuration files

        Returns:
            bool: Connection status

        """
        is_opened = self.is_opened()

        # If we are already opened do not attempt to make the same
        # connection unless refresh is specified.
        if is_opened and not refresh:
            log.warning("Already opened.")
            return True

        # We have a port but its not opened and were not
        # re-reading the settings.
        elif self._port is not None and not is_opened and not refresh:
            found_port = self._port
        else:

            # Treat everything below as a new connection

            # Get the port from the current preferences
            found_port = self._get_port()

            # Early return if no port was found
            if not found_port:
                log.warning("No preference files found")
                return False

            # If opened and refresh
            # disconnect the current if the port differs
            if refresh and is_opened:
                if self._port == found_port:
                    log.info("Same port found in settings. Nothing will be applied")
                    return True
                # Only disconnect if the port has changed
                self.disconnect()

        self._port = found_port
        self._port_name = PORT_FORMAT.format(port=self._port)

        existing_ports = cmds.commandPort(listPorts=True, query=True)

        if self._port_name in existing_ports:
            log.warning("Already connected")
            return True

        try:
            # Attempt to connect to the found port
            cmds.commandPort(name=self._port_name)
            log.info("Connected {port_name}".format(port_name=self._port_name))
        except:
            # Creation will only fail if the port exists
            # Note: I have not found a good way to get the port number

            # Assume port convention is `:port`
            found_names = filter(
                lambda port_name: (":" + self._port) in port_name,
                existing_ports)

            if not found_names:
                log.error("Failed to find an existing port {port}. "
                          "Can not create new connection.".format(
                    port=self._port))
                return False

            log.warning("Attempting to close existing "
                        "port {port}".format(port=self._port))

            try:
                # Attempt to close the existing port so we can open a
                # new one with our naming convention
                cmds.commandPort(name=found_names[0], close=True)
                log.info("Closed {port_name}".format(port_name=found_names[0]))
            except:
                log.error("Failed to close existing port {port}. "
                          "Can not create new connection.".format(
                    port=self._port))
                return False

            try:
                # Re Attempt to connect to the found port
                cmds.commandPort(name=self._port_name)
                log.info("Connected {port_name}".format(port_name=self._port_name))
                return True
            except:
                log.error("Unable to connect to {port_name} "
                          "after closing original port".format(
                    port_name=self._port_name))
                return False

    def disconnect(self):
        """Disconnect the current connection

        Returns:
            (bool|None): success of disconnecting. `None if nothing opened`

        """
        is_opened = self.is_opened()
        if not is_opened:
            if self._port:
                log.error("{port_name} is not opened.".format(port_name=self._port_name))
            else:
                log.error("Never connected.")
            return

        try:
            cmds.commandPort(name=self._port_name, close=True)
            log.info("Closing {port_name}".format(port_name=self._port_name))
            return True
        except:
            return False

Runtime error R6034

Runtime error
i use maya 2017 with pycharm 2019.2
it's my first time use the mayacharm.
when i Attaching to maya or Debug maya
All will make maya.exe report a Runtime error R6034

i could Run the code,no error
Debug the code ,Runtime error R6034

i try manually connet the debugger
when i import pydevd_pycharm ,Runtime error R6034
so is there something wrong with me or just the pydevd_pycharm ?
Also i pip the pydevd_pycharm in mayapy.exe,is there anything wrong?

when the maya report the Runtime error R6034,it doesn't crash,just work as usual.
when you try again,it wont show anything,but the breakpoint not work the debug not work

No autocomplete

Hi! Could you help me please, i have a problem - the autocompletion of code doesn't working. The scripts are working but without this option it's very hard to code :( Maybe i've missed something in the setup process?
1536787028093

Debug pauses at line 92 threading.py & MayaCharmTemp.py

Not sure if I have incorrect setup but nearly everytime I send commands to Maya in Debug mode using MayaCharm my debugger pauses at threading.py line 92 and at pydev.settrace in the MayaCharm temp file.

Any suggestions on how to avoid this as it is quite annoying?

Cheers,

Ben

not show result output on osx

I can not see Maya output of Maya Log in PyCharm window.
(script execution works, I can see output in Maya)

I use Maya 2018 and the newest pro version of PyCharm.

MayaCharm Log Issue

Hi Chris,
Under Maya 2019.2, Maya Charm 3.1.1, mayapy.exe as sdk and Window 10 as operative system: maya log inside PyCharm does not show logger.debug("msg") and logger.info("msg"), . Does I need to consider something more?
I do not know if is a configuration problem or the way is coded the getting of the loggers.

Add debugger port options to general settings

I noticed in #11 , the debugger settings I made in the main MayaCharm settings were similar to those already existing in MayaCharmDebugForm.

Maybe I can make the:

  • Host Name
  • Port Number
    options inherit from a "global" set of options.

Those "global" options can then be used for "attach to local process" in #11

Exception happens after code execution

Pycharm 2019.2 .2.4 . MayaCharm version 3.1.2. OS Windows 10

Hi Chris!
After code execution I get this exception. The code executes correctly but this exception crashes Maya with our custom Log UI opened. Any Idea why this exception happens?

Exception happened during processing of request from ('127.0.0.1', 50156)
# Traceback (most recent call last):
#   File "C:\Program Files\Autodesk\Maya2019\bin\python27.zip\SocketServer.py", line 295, in _handle_request_noblock
#     self.process_request(request, client_address)
#   File "C:\Program Files\Autodesk\Maya2019\bin\python27.zip\SocketServer.py", line 321, in process_request
#     self.finish_request(request, client_address)
#   File "C:\Program Files\Autodesk\Maya2019\bin\python27.zip\SocketServer.py", line 334, in finish_request
#     self.RequestHandlerClass(request, client_address, self)
#   File "C:\Program Files\Autodesk\Maya2019\bin\python27.zip\SocketServer.py", line 657, in __init__
#     self.finish()
#   File "C:\Program Files\Autodesk\Maya2019\bin\python27.zip\SocketServer.py", line 716, in finish
#     self.wfile.close()
#   File "C:\Program Files\Autodesk\Maya2019\bin\python27.zip\socket.py", line 283, in close
#     self.flush()
#   File "C:\Program Files\Autodesk\Maya2019\bin\python27.zip\socket.py", line 307, in flush
#     self._sock.sendall(view[write_offset:write_offset+buffer_size])
# error: [Errno 10053] An established connection was aborted by the software in your host machine

>= 2019.3 Support

So 2019.3 has brought lots of issues with how pydev works

  • Upgrade Project to Gradle and the new project structure required for Intellij Platform plugins
  • Get PyCharm detecting the correct version of python for mayapy
  • Deal with deprecations and prepare for 2020.1
  • Sort out differences with the new version of pydev included in PyCharm >= 2019.3

Update: 2021-02-15

some progress has finally been made, and i got a prerelease version for testing
https://github.com/cmcpasserby/MayaCharm/releases/tag/prerelease/vv3.2.1-test.3

Update: 2021-03-17

Issue resolved, and working versions are available in the plugin marketplace and on the releases page.

Not finding maya.bin process

When I attempt to debug a script with the plugin I get the following:

7:06 PM MayaCharm: no running Maya Instance for "/mnt/tools/binlinux/aw/maya2016.5.sp2/bin/maya" found
Even though my interpreter is set to:
/mnt/tools/binlinux/aw/maya2016.5.sp2/bin/mayapy

Where I am currently, the /maya script is a custom wrapper that then runs maya.bin. It seems like this isn't looking for the maya.bin proc

MayaCharm runner not found

Hi

I have a Mayacharm project called Maya2018. All of the debug UI in PyCharm is greyed out, and I am getting this error:

Error running 'Maya2018': Cannot find runner for Maya2018

I should add that I originally had Pycharm 2020.1 installed, and was then advised that I needed PyCharm 2019.2.4 installed to run MayaCharm, and something about downgrading PyCharm broke things for me, but I'm unclear what that might be. I've tried uninstallling and reinstalling - but that does not seem to fix it.

Any idea what that might be, or how to fix it?

Thanks!

Unsupported major.minor version 52.0

When starting the MayaCharm plugin, the following messages appears in the event log:
PluginException: ca/rightsomegoodgames/mayacharm/logconsole/MayaLogWindow : Unsupported major.minor version 52.0 [Plugin: ca.rightsomegoodgames.mayacharm - log

After approx. 30 sec, the following exception appears

PluginException: cannot create class ca.rightsomegoodgames.mayacharm.actions.SendBufferAction" [Plugin: ca.rightsomegoodgames.mayacharm] - log

Further logs are given for each message in the links provided.

I'm using PyCharm Professional 5.0.4 build PY 143.1919 on Linux based systems, with openjdk (OpenJDK Runtime Environment (IcedTea 2.6.4) (7u95-2.6.4-1~deb8u1)) and Maya 2016

Erroneous Maya Log output

Windows 7 x64
Maya 2014
PyCharm Community Edition 2016.1, Build #PC-145.260, JRE: 1.8.0_45-b15 amd64
MayaCharm 2.1

When using the MayaLog, extra lines are being logged which are not present in the actual Maya script editor output.

For example if executing this code:

import maya.cmds as cmds
print cmds.ls(typ='lambert')

The MayaCharm log looks like this:

[u'lambert1']
']
']
']
']

I've also seen some other strange behavior that is hard to repro, such as a lot of whitespace occasionally being added to these extra lines.

PyCharm Professional required?

Is PyCharm Professional still required for MayaCharm? In theory, the Community edition can "Attach to Process..." to a local (not remote) process, but doesn't know how to detect Maya's "mayapy" as a running Python process to attach to? Does whatever MayaCharm's addition into Pycharm's process discovery routines still require Professional?

Out of curiosity, what criteria does stock PyCharm use to find eligible local processes to Attach... to?

Debugger Not working , breakpoint not riggered

pycharm version: 2018.3
mayacharm version: 3.0.1
maya version: 2018

I can execute file to maya var run/debug configurations in pycharm. But breakpoint just not work. The breakpoints won't trigger.
I comes with:
image

image
image

Execute Document only works if file is saved

Windows 7 x64
Maya 2014
PyCharm Community Edition 2016.1.2, Build #PC-145.844, JRE: 1.8.0_45-b15 amd64
MayaCharm 2.1

I'm not sure if this is intended functionality, but Execute Document (Alt-A) seems to only work if the document is saved to disk. Any pending modifications will not be picked up. I believe Execute Document used to work regardless of whether you'd saved the file or not, and that would be the desired functionality.

Execute Document and Selection both greyed out

Hi!

I'm using Maya 2017 update 1 and the latest pycharm community (2019.1). I'm downloading the plugin directly from the market so I'm also running its latest version.

Right now I have my SDK set to "...\Maya2017\bin\mayapy.exe" and I'm opening the correct port on maya's side. If I go to "attach to process" I see "...\Maya2017\bin\maya.exe" and I can successfully attach to it.

Still, I don't seem to be able to execute the document (or selection). The hotkeys won't do anything and both options on the "Run" menu are greyed out. The "Connect to maya's log" is not greyed out though.

I've also tried downloading older versions here but still it doesn't work. Also tried adding my current file on the run configuration but didn't seem to do anything either.

Any help is appreciated :) Thanks

execute selection to maya

def tomaya():
print "dd"
maya = tomaya()

if I execute selection to maya can you add "print maya " at end

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.