All plug-ins and renderers can be started without Python. The Python installation is checked only when Python is really needed (i.e. when a script starts with #!py). If the installation is missing, Python scripts return the error 1. For the first Python script, a corresponding warning message is also shown. The following Python versions are expected:
Important note for InDesign 2024® ff. :
Unfortunately, the default installation of InDesign contains a Python 3.9 library since v19 (2024) of InDesign®.
From time to time, InDesign® uses this library to check your subscription.
In these cases, Python 3.9 obfuscates the functions of 3.12 and InDesign crashes when initializing 3.12:
1 libpython3.9.dylib 0x11be70250 _PyObject_GC_NewVar + 52
To solve the problem, please try the following:
• Reset your internet connection
• Restart your computer
• Re-install Python 3.12.x. Here you can find an installation package.
By the way, you can have any other, even newer Python version(s) installed. These versions are ignored by the priint:comet plug-ins and by comet_pdf.
Please note: In contrast to v4.x, v5.0 requires the Python version 3.12.
For the installation of the plug-ins we strongly recommend the installers provided by WERK II:
For information about the System Requirements for InDesign see here.
All plug-ins are supplied in the so-called Universal Architecture and run on both Intel and Silicon machines. At least macOS Version 12 (Monterey) is required for all priint:comet plug-ins.
All plug-ins are checked against malware by Apple. However, since you did not get the plug-ins from the App Store, it is necessary to change the security settings of your System Settings:
Because this file contains entries from our bug tracking system, the content of this file is partly in German.
The table describes the features and bug fixes of the priint:comet ID 5.0 plug-ins.
Revision | Case | Description |
v5.0 R36169 15.02.2025 |
Python improvements |
New functions: |
TW 3316122 - Python Debugger does not work on Mac |
Unfortunately, I can't get the Python debugger to start on my Mac. I always get the line # Failed to initialize Python debugging server. in my log instead. This is fixed now and the Debugger (debugpy 1.8.12) will start properly. Please note : You also need Python 3.12.6 installed on Mac OS! Don't forget the comet.debug.breakpoint (True) at the beginning of you script! ![]() |
|
TW 3315689 - logger::debug unfortunately no longer works |
Unfortunately, the logger::debug command has not been working for some time now. The problem only occurs if the log.xml file is located directly in the priint:comet plugins folder. If the file is located one level higher in the InDesign Plug-Ins folder or in $PREFS, then it works. The error has now been fixed and log.xml can now be located in the priint:comet plugins folder again. |
|
TW 3313292 - wtlog does not work anymore |
Since the last release, the function wtlog does not write into the log anymore. Here's a very simple script: int main() { wlog("","%s","xxx by wlog\n"); wtlog("","%s","yyy by wtlog\n"); return 0; } But I only get this one line as a result: xxx by wlog Uuh, sorry, this is fixed now. |
|
v5.0 R36072 03.02.2025 |
Python improvements |
New functions: |
New Product Selection |
After recurring problems with the product selection when build-up via the panel and in the functions productlist::get and datapool::get_products, we have reimplemented the entire product selection. Please check carefully whether the selection of the installed products in your applications is also correct with the new implementation! A detailed description including a test system for the possibilities of automatic selection of sub-products during product build-ups can be found here. A complete description of the selection language for checking and loading products can be found here. Internal note: Search for gp2. |
|
Move Group to Layer TW 3297260 |
Inlines and frames from InDesign® groups cannot be moved separately from their parent object (the text frame frame or the group). In the fourth parameter of the Layout Rule Move To Layer you can now specify whether the parent object should also be moved in these cases. For grouped frames, all frames in the group are then moved to the specified level. With inlines, the containing text frame is moved. If the text frame is part of an InDesign® group, all frames in this group are also moved. |
|
Alt Text for Hyperlinks TW 3298591 - Assign alternative text for hyperlinks via scripting |
Is there a way to set the alternative text (Accessibility Text) of hyperlinks via cScript? Unfortunately, this is not possible via TaggedText or Javascript. The AltText is neither in the TaggedText nor is there a Javascript function. We have implemented the following two cScript functions for this purpose: |
|
TW 3299847 - Get the hyperlink of a given frame |
With nth = -1, >hyperlink::get_nth retrieves the hyperlink of the frame itself. But only with comet_pdf. Is this also possible for InDesign®? The index -1 now also fetches the hyperlink of the frame (if there is one) in InDesign®. |
|
TW 3298291 - Hilite 'Default' Template in Product Pool |
The entries of the Product Pool that do not have a template have 'Default' (German ''Standard') as their template name in the panel. Is there any way to highlight these entries, e.g. with a different color? The default template is now shown in pink color. ![]() |
|
TW 3281170 - InDesign crashes when calling a Java method from Python |
InDesign® crashes when I call a Java method from Python like that: #!py #pragma plain import comet pluginlib = comet.pyImport('[pubserver]/.../PythonLib.py') def main(): message = pluginlib.helloWorldWithContext() comet.showMessage(message) return 0 The reason for the crashes was most likely that the cache folder $CACHE/PyImport still contained old imports from another data connection. We now delete the contents of this folder every time a data connection is established or disconnected. That solved the problem for us. |
|
23.01.2025 Withdrawn |
Sudoku |
![]() This release contains the good old but improved Sudoku plugin again. Simply open the Sudoko panel, select a sufficiently large and empty text frame. Use the + button on the panel to create a Sudoku in one of 12 levels of difficulty. Und los gehts. ![]() |
Nullify Variables on Releases TW 3241101 |
If I release a char* string defined with alloc, the variable still points to the old, released memory. Yes, that is correct. The behavior corresponds to that of standard C and C++. Regardless of this, we have added a small extension: With the (new) cScript command prefs::set_script_nullify_on_release (1); you cause cScript to set the corresponding variable and all variables that point to the same memory address to the value 0 for releases (release, string::release, productlist::release, ...). To ensure that this also helps, these variables should also be checked for 0 before use :-) In any case, something like this still leads to a crash (or rather: precisely because of it): char * s = alloc (128);
prefs::set_script_nullify_on_release (1);
release (s);
wlog ("", "0X%x\n", *s);
|
|
TW 3291507 - article::members::add does not work |
Except for the current script frame, the function article::members::add always returns an error. This is fixed. The same applies to all document::members functions. |
|
TW 3286001 - Logger not working |
I’m trying to log messages in some scripts. To configure that, I’ve added a log.xml. But unfortunately none of my attempts are working and the the requestesd logfile is not written. To improve performance, we have revised the entire logging system in 5.0 R35824. Unfortunately, a few errors have crept in - including the fact that many messages are no longer written in the presence of a log.xml configuration. This is fixed now and the logging system should work as before (but significantly faster). |
|
TW 3270654 - Comet 5.0 R35868 - InDesign 2025 crashes on Mac |
The plug-ins of the Mac installer of v5.0 R35868 unfortunately cause InDesign® to crash immediately on startup. We have (hopefully) fixed that. |
|
TW 3248920 - ☢ Crash when logging into a Unicode SQL database |
When I try to log into a database with a Unicode character set, InDesign crashes immediately. The error appears in the log the first time a text is to be retrieved. The last entry in the log is: select hasstringids, statement from panelstatements where id = 92; The error only occurs from v5.0 and only under Windows. FXD |
|
TW 3273829 - itemlist::chained always returns empty list |
The itemlist::chained function unfortunately always returns an empty list with v5.0. In v4.3 the function works until the end. FXD. The function now also works again in v.5.0. |
|
comet.getVersionMajor and comet.getVersionMinor return str instead of int |
The Python functions comet.getVersionMajor and comet.getVersionMinor return str instead of int. [Fixed] |
|
TW 3290207 - comet.file.downloadWebImages wrong result entries on failed downloads |
The Python function comet.file.downloadWebImages returns a list of results containing error codes. [Fixed] |
|
TW 3290251 - Python - wrong parameter in comet.CFrame.setBarcode |
The Python function comet.CFrame.setBarcode has multiple problems:
[Fixed] |
|
v5.0 R35824 05.12.2024 |
Python improvements |
General improvements:
New classes: New functions:
|
Faster logfile writing |
We managed to refactor logfile writing, resulting in greatly improved performance. |
|
v5.0 R35572 16.10.2024 |
First Release of v5.0 |
We are pleased to present the First release of version 5 of the priint:comet ID plugins here. |
cScript Tracer |
With version 5.0, the priint:comet plugins offer a debugger-like tool to trace cScripts step by step. The tracer is running your Internet browser. More information can be found here. ![]() |
|
Python improvements |
General improvements:
Breaking changes: See porting guide for more information.
New modules: New classes: New functions:
|
|
Smaller 'Placeholder Options' TW 3084138 |
The panel Placeholder Options can now be reduced to a smaller size using the 'Details' button. The selected size is retained when restarting. ![]() |
|
Articles Structure to W2ML TW 3053960 |
In the InDesign® Articles panel, the frames of a document can be grouped into articles. This article structure is then used for the export to Accessible PDFs (PDF/UA). Since comet_pdf supports the Accessibility Tags for PDF/UA since v5.0, we also add the articles structure into W2ML now. |
|
Articles Script Support TW 3052499 |
For the accessibility structure of the final PDFs we also need to have script support of the articles structure of the documents. The following functions are available now for this purpose:
|
|
Alternative Text for Frames TW 3045637 |
In InDesign®, an 'Alt Text' can be defined for a frame via the Object Export Options ... -> Object Export Options dialog. This definition is inserted into the accessibility structure of the PDF in PDF export. We now also support this in cScript and in comet_pdf. |
|
string::rfind
TW 3149045 |
Using string::rfind you can search backwards in strings. Please note: Unlike string::find, this function does not support regular expressions! |
|
TW 3149041 - textmodel::get_frame_containing returns wrong column number |
Unfortunately, the function textmodel::get_frame_containing always returns the wrong number of columns. The results are always something like -4294967295 or -4294967296. The problem is solved now. |
|
TW 3060558 - The 'Reset' button of Placeholder Options crashes InDesign |
When I click the Reset button at the bottom left of panel Placeholder Options, InDesign crashes immediately and reproducibly. The error does not occur if a Python script was executed at least once before the reset. When the button is clicked, all cached Python information should also be reset (with a Python script). But without a previous call, Python is not yet initialized. The error has been fixed. |
|
TW 3090945 - What do the small arrows next to the panel names mean? |
There are always two small arrows next to the names of the panels: ![]() When I click on it, the size of the panel changes twice, the third time the panel is collapsed. Etc. The arrows are for the so-called detail views of the panels, which are shown in rotation.In the priint:comet plugins, this is only supported by the Placeholder Options panel. We have now removed these details arrows from the other panels. |
|
TW 3053984 - Username of frame missing in W2ML import of InDesign |
The so called username of a frame is not set into the W2ML export of a document. The username is shown (and can be set there) in the 'Layers' panel. By cScript you can use the functions frame::get/set_name and interactive::set/get_pdf_option with type kPDFFieldName. This is done now. To read/re-write this setting, you also have to use comet_pdf of v5.0. |