Running Python Interactive Console

The Python interactive console, also known as Python interpreter or Python shell, provides programmers with a quick way to execute commands and try out and test code without creating a file. UNO objects introspection as well as LibreOffice Python modules documentation can be obtained from the terminal.

note

From a full-featured LibreOffice installed package, use either Basic or Python:


Using a Basic macro


        Sub interpreter_console
            Const UNIX = 4
            ps = CreateUnoService("com.sun.star.util.PathSettings")
            install_path = ConvertFromURL(ps.Module)
            cmd = IIF(GetGuiType()=UNIX,"x-terminal-emulator -e ","")
            Shell(cmd + install_path + GetPathSeparator() + "python" )
        End Sub
    

Using a Python macro


        # -*- coding: utf-8 -*-
        from __future__ import unicode_literals
           
        import uno, os, subprocess
            
        def interpreter_console():
            ctx = XSCRIPTCONTEXT.getComponentContext()
            smgr = ctx.getServiceManager()
            ps = smgr.createInstanceWithContext("com.sun.star.util.PathSettings", ctx)
            install_path = uno.fileUrlToSystemPath(ps.Module)
            pgm = install_path + os.sep + "python"  # Python shell/console path
            subprocess.Popen(pgm)  # Start Python interactive Shell
            
    

Example output

Python Interactive Console

Alternative console

Use APSO extension console as an alternative:

APSO console

Please support us!