Declare Command
Jump to navigation
Jump to search
The problem
Current PyMOL approach to new plugin commands is outdated.
The proposal
Introduce a new system based on modern Python with type checking and implicit type coercion.
What works right now?
There's some support on PyMOL open-source, but not on Incentive. However it isn't working for all possible cases.
@cmd.declare_command
def new_command(
my_var: int | float,
dirname: Path = '.',
# Optional values aren't currently supported.
# Tuples are.
nullable_point: Optional[Tuple[int, int, int]] = None,
extended_calculation: bool = True,
old_style: Any = "Support anything currently not supported",
):
"""
A cool docstring.
"""
pass