summaryrefslogtreecommitdiff
path: root/pyuno/README.md
diff options
context:
space:
mode:
authorHossein <hossein.ir@gmail.com>2021-03-23 14:20:32 +0430
committerChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2021-03-24 11:46:14 +0100
commitc16158772d64cab8a4ed1f165cab57d307998e78 (patch)
tree424f72af3b4a877ecb9493cd64de70e4925a9bee /pyuno/README.md
parentea184837a54fc85599d78baf59c83b6cf8bd0adb (diff)
Using .md extension/Markdown syntax for modules README
Renaming all README files for all top level modules to README.md, applying no content change at this stage to be able to track history of the files. These files should be edited to use correct Markdown syntax later. Change-Id: I542fa3f3d32072156f16eaad2211a397cc212665 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112977 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Diffstat (limited to 'pyuno/README.md')
-rw-r--r--pyuno/README.md19
1 files changed, 19 insertions, 0 deletions
diff --git a/pyuno/README.md b/pyuno/README.md
new file mode 100644
index 000000000000..4d88391229f1
--- /dev/null
+++ b/pyuno/README.md
@@ -0,0 +1,19 @@
+UNO bindings for the Python programming language.
+
+To have much joy debugging python extensions you need to:
+ a) edit pythonloader.py in your install setting DEBUG=1 at the top
+ b) touch pyuno/source/module/pyuno_runtime.cxx and 'make debug=true' in pyuno
+
+Then you'll start to see your exceptions on the console instead of them getting
+lost at the UNO interface.
+
+Python also comes with a gdb script
+libpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so.1.0-gdb.py
+that is copied to instdir and will be auto-loaded by gdb;
+it provides commands like "py-bt" to get a python-level backtrace,
+and "py-print" to print python variables.
+
+Another way to debug Python code is to use pdb: edit some initialization
+function to insert "import pdb; pdb.set_trace()" (somewhere so that it is
+executed early), then run soffice from a terminal and a command-line python
+debugger will appear where you can set python-level breakpoints.