Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

Testing OpenSesame 3.3 and Rapunzel (a code editor for Python and R)

edited December 2019 in OpenSesame

Development of the next major release of OpenSesame (3.3) is well underway. Notable among many exciting improvements is the addition of Rapunzel, a code editor for Python and R. Technically, Rapunzel is a set of extensions that turn OpenSesame into a full-fledged code editor. But you can start it as a standalone application. Rapunzel is modern, clean, and offers all the features that you would expect from a modern code editor.

For installation instructions, visit https://osdoc.cogsci.nl/3.3.

A screenshot of Rapunzel 0.3.1, showing the project-folder browser (left), the editor with code-cell support (center), the Python workspace browser (right), and a Jupyter IPython console (bottom).

Comments

  • hi,

    i have downloaded the new version, however both installer and non-installer packages are zip, and i am not sure how to execute the GUI from extracted zip, which executable should i run?

    could you advise?

    thank you

    Lena

  • Hi Lena,

    You can double-click on opensesame.bat , opensesamerun.bator rapunzel.bat . Happy testing!

    Cheers!

    Sebastiaan

  • Hi Sebastiaan,

    I've tried all of them, without any luck. Looks like there are python errors. Do I need to place the extracted folder somewhere where python is?

    thanks

    Lena

  • edited December 2019

    Hi Lena,

    Thanks for testing. I'm guessing that when you click on the .bat files, a console quickly pops up and then disappears again, without your being able to see the error message. Am I right? If so, could you edit the .bat file (say opensesame.bat ) and then add a new line with pause to the end of it? That way the console will stay open after the program has crashed. And then please post the error message here!

    Do I need to place the extracted folder somewhere where python is?

    Python is bundled along with the software, so that's not necessary.

    Cheers,

    Sebastiaan

  • edited December 2019

    hi Sebastiaan,

    Actually I ran it via cmd to start with, to see what happened and hence realized there are python errors.๐Ÿ˜Š

    attaching the screenshot .

    thank you so much

    Lena


  • Hi Lena,

    Sorry for the slow reply. To me, this looks like there's a confusion between different Python environments. Specifically, there may be a Python environment that has modified some environment variables. Do you have other Python distributions installed alongside OpenSesame, such as PyCharm or Anaconda? (Normally this should be fine, but it may sometimes cause conflicts.)

    Cheers!

    Sebastiaan

  • edited January 22

    Hi Sebastiaan,

    I tested 3.3 today and got some problems with the plugins.

    The variables that originate from info.yaml are not accessible anymore from the qt class in the plugin. So it is not possible anymore to change plugin settings on the fly. My plugins have the problem but also for example the media player plugin from Daniel. Strange thing is that form_multiple_choice also uses some of these variables but there it works. I cannot find any fundamental differences between that form plugin and the problematic plugins.

    To explain with an example:


    In class qtmedia_player_mpy from Daniel:

    self.play_audio.currentTextChanged.connect(self.set_soundrenderer_status)
    

    self.play_audio is inaccessible


    But in class qtform_multiple_choice

    self.checkbox_advance_immediately.setEnabled(self.var.get(u'allow_multiple') ==u'no')
    

    self.checkbox_advance_immediately is accessible


    Any ideas on that?

  • Hi Bob,

    As of OpenSesame 3.3, the GUI controls of items are not created immediately. Rather, they are loaded in the background or (when you activate the item before the controls have been loaded) at the moment that they are first shown. This improves GUI responsiveness a lot, especially when opening an experiment with many items.

    The downside of this is that it breaks some items. You can restore the old behavior by setting the lazy_init class property to False , which is what is done in the form_multiple_choice plugin. That's probably the easiest fix. A more elaborate fix would require refactoring the code such that certain things are only done when the GUI controls are initialized, instead of immediately when the class is instantiated.

    Cheers!

    Sebastiaan

  • hi Sebastiaan,

    I indeed do have both Anaconda and PyCharm installed.

    Any suggestions how to overcome the conflicts and what's causing them?

    thank you!

    Lena

  • Hi Lena,

    My guess is that if you view the system environment variables (in the Windows settings), and then go to the PATH variable, that you will see entries related to PyCharm. If you remove these, your OpenSesame environment should work as expected again. However, this may break PyCharm (although this is kind of their own fault, because they shouldn't be setting paths like that ๐Ÿ˜‰).

    Alternatively, you can see if installing OpenSesame through Anaconda does work. (I'm not sure, because it depends on the specifics of how paths are set.) If you're familiar with Anaconda, then this is actually a very convenient way to install OpenSesame (it will also make it easy to update OpenSesame):

    Cheers!

    Sebastiaan

Sign In or Register to comment.