Aide Collabora Office 24.04
La console interactive Python, également connue sous le nom d'interpréteur Python ou shell Python, offre aux programmeurs un moyen rapide d'exécuter des commandes, d'essayer et de tester du code sans créer de fichier. L'introspection des objets UNO ainsi que la documentation des modules Collabora Office Python peuvent être obtenus à partir du terminal.
À partir d'un package installé complet de Collabora Office, utilisez Basic ou Python :
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
# -*- 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
À partir d'une copie de Collabora Office incluse dans une plate-forme GNU/Linux, utilisez le terminal comme indiqué :
Les commandes de terminal whereis ou type aident à localiser la console interactive Python :
user@computer:~$ type -p python3
/usr/bin/python3
user@computer:~$ /usr/bin/python3
Python 3.7.5 (default, Nov 20 2019, 09:21:52)
[GCC 9.2.1 20191008] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import uno
>>> dir(uno)
['Any', 'Bool', 'ByteSequence', 'Char', 'Enum', 'PY2', 'Type', '_ConstantGroup', '__builtin__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '_builtin_import', '_component_context', '_impl_getConstantGroupByName', '_uno_extract_printable_stacktrace', '_uno_import', '_uno_struct__eq__', '_uno_struct__getattr__', '_uno_struct__init__', '_uno_struct__ne__', '_uno_struct__repr__', '_uno_struct__setattr__', '_uno_struct__str__', 'absolutize', 'createUnoStruct', 'fileUrlToSystemPath', 'generateUuid', 'getClass', 'getComponentContext', 'getConstantByName', 'getCurrentContext', 'getTypeByName', 'invoke', 'isInterface', 'os', 'pyuno', 'setCurrentContext', 'six_string_types', 'socket', 'sys', 'systemPathToFileUrl', 'traceback', 'warnings']
>>> exit()
user@computer:~$
Utilisez la console APSO extension comme alternative :