@agent-webui/ai-desk-python-darwin-x64 1.0.29-beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/package.json +20 -0
- package/python/bin/idle3.13 +7 -0
- package/python/bin/pip +8 -0
- package/python/bin/pip3 +8 -0
- package/python/bin/pip3.13 +8 -0
- package/python/bin/pydoc3.13 +7 -0
- package/python/bin/python3.13 +0 -0
- package/python/bin/python3.13-config +76 -0
- package/python/include/python3.13/Python.h +140 -0
- package/python/include/python3.13/abstract.h +921 -0
- package/python/include/python3.13/bltinmodule.h +14 -0
- package/python/include/python3.13/boolobject.h +54 -0
- package/python/include/python3.13/bytearrayobject.h +44 -0
- package/python/include/python3.13/bytesobject.h +66 -0
- package/python/include/python3.13/ceval.h +145 -0
- package/python/include/python3.13/codecs.h +176 -0
- package/python/include/python3.13/compile.h +22 -0
- package/python/include/python3.13/complexobject.h +30 -0
- package/python/include/python3.13/cpython/abstract.h +87 -0
- package/python/include/python3.13/cpython/bytearrayobject.h +34 -0
- package/python/include/python3.13/cpython/bytesobject.h +37 -0
- package/python/include/python3.13/cpython/cellobject.h +44 -0
- package/python/include/python3.13/cpython/ceval.h +25 -0
- package/python/include/python3.13/cpython/classobject.h +71 -0
- package/python/include/python3.13/cpython/code.h +358 -0
- package/python/include/python3.13/cpython/compile.h +50 -0
- package/python/include/python3.13/cpython/complexobject.h +33 -0
- package/python/include/python3.13/cpython/context.h +74 -0
- package/python/include/python3.13/cpython/critical_section.h +134 -0
- package/python/include/python3.13/cpython/descrobject.h +62 -0
- package/python/include/python3.13/cpython/dictobject.h +102 -0
- package/python/include/python3.13/cpython/fileobject.h +16 -0
- package/python/include/python3.13/cpython/fileutils.h +8 -0
- package/python/include/python3.13/cpython/floatobject.h +27 -0
- package/python/include/python3.13/cpython/frameobject.h +35 -0
- package/python/include/python3.13/cpython/funcobject.h +184 -0
- package/python/include/python3.13/cpython/genobject.h +83 -0
- package/python/include/python3.13/cpython/import.h +25 -0
- package/python/include/python3.13/cpython/initconfig.h +274 -0
- package/python/include/python3.13/cpython/listobject.h +53 -0
- package/python/include/python3.13/cpython/lock.h +63 -0
- package/python/include/python3.13/cpython/longintrepr.h +146 -0
- package/python/include/python3.13/cpython/longobject.h +116 -0
- package/python/include/python3.13/cpython/memoryobject.h +50 -0
- package/python/include/python3.13/cpython/methodobject.h +66 -0
- package/python/include/python3.13/cpython/modsupport.h +26 -0
- package/python/include/python3.13/cpython/monitoring.h +250 -0
- package/python/include/python3.13/cpython/object.h +535 -0
- package/python/include/python3.13/cpython/objimpl.h +104 -0
- package/python/include/python3.13/cpython/odictobject.h +43 -0
- package/python/include/python3.13/cpython/picklebufobject.h +31 -0
- package/python/include/python3.13/cpython/pthread_stubs.h +105 -0
- package/python/include/python3.13/cpython/pyatomic.h +569 -0
- package/python/include/python3.13/cpython/pyatomic_gcc.h +551 -0
- package/python/include/python3.13/cpython/pyatomic_msc.h +1095 -0
- package/python/include/python3.13/cpython/pyatomic_std.h +976 -0
- package/python/include/python3.13/cpython/pyctype.h +39 -0
- package/python/include/python3.13/cpython/pydebug.h +38 -0
- package/python/include/python3.13/cpython/pyerrors.h +132 -0
- package/python/include/python3.13/cpython/pyfpe.h +15 -0
- package/python/include/python3.13/cpython/pyframe.h +45 -0
- package/python/include/python3.13/cpython/pyhash.h +47 -0
- package/python/include/python3.13/cpython/pylifecycle.h +92 -0
- package/python/include/python3.13/cpython/pymem.h +84 -0
- package/python/include/python3.13/cpython/pystate.h +277 -0
- package/python/include/python3.13/cpython/pystats.h +175 -0
- package/python/include/python3.13/cpython/pythonrun.h +96 -0
- package/python/include/python3.13/cpython/pythread.h +43 -0
- package/python/include/python3.13/cpython/pytime.h +27 -0
- package/python/include/python3.13/cpython/setobject.h +71 -0
- package/python/include/python3.13/cpython/sysmodule.h +22 -0
- package/python/include/python3.13/cpython/traceback.h +13 -0
- package/python/include/python3.13/cpython/tracemalloc.h +32 -0
- package/python/include/python3.13/cpython/tupleobject.h +38 -0
- package/python/include/python3.13/cpython/unicodeobject.h +703 -0
- package/python/include/python3.13/cpython/warnings.h +20 -0
- package/python/include/python3.13/cpython/weakrefobject.h +63 -0
- package/python/include/python3.13/critical_section.h +16 -0
- package/python/include/python3.13/datetime.h +267 -0
- package/python/include/python3.13/descrobject.h +100 -0
- package/python/include/python3.13/dictobject.h +108 -0
- package/python/include/python3.13/dynamic_annotations.h +499 -0
- package/python/include/python3.13/enumobject.h +17 -0
- package/python/include/python3.13/errcode.h +45 -0
- package/python/include/python3.13/exports.h +108 -0
- package/python/include/python3.13/fileobject.h +41 -0
- package/python/include/python3.13/fileutils.h +62 -0
- package/python/include/python3.13/floatobject.h +54 -0
- package/python/include/python3.13/frameobject.h +20 -0
- package/python/include/python3.13/genericaliasobject.h +14 -0
- package/python/include/python3.13/import.h +103 -0
- package/python/include/python3.13/internal/mimalloc/mimalloc/atomic.h +392 -0
- package/python/include/python3.13/internal/mimalloc/mimalloc/internal.h +969 -0
- package/python/include/python3.13/internal/mimalloc/mimalloc/prim.h +329 -0
- package/python/include/python3.13/internal/mimalloc/mimalloc/track.h +147 -0
- package/python/include/python3.13/internal/mimalloc/mimalloc/types.h +721 -0
- package/python/include/python3.13/internal/mimalloc/mimalloc.h +565 -0
- package/python/include/python3.13/internal/pycore_abstract.h +61 -0
- package/python/include/python3.13/internal/pycore_asdl.h +112 -0
- package/python/include/python3.13/internal/pycore_ast.h +926 -0
- package/python/include/python3.13/internal/pycore_ast_state.h +268 -0
- package/python/include/python3.13/internal/pycore_atexit.h +67 -0
- package/python/include/python3.13/internal/pycore_backoff.h +145 -0
- package/python/include/python3.13/internal/pycore_bitutils.h +186 -0
- package/python/include/python3.13/internal/pycore_blocks_output_buffer.h +321 -0
- package/python/include/python3.13/internal/pycore_brc.h +74 -0
- package/python/include/python3.13/internal/pycore_bytes_methods.h +82 -0
- package/python/include/python3.13/internal/pycore_bytesobject.h +152 -0
- package/python/include/python3.13/internal/pycore_call.h +205 -0
- package/python/include/python3.13/internal/pycore_capsule.h +17 -0
- package/python/include/python3.13/internal/pycore_cell.h +48 -0
- package/python/include/python3.13/internal/pycore_ceval.h +305 -0
- package/python/include/python3.13/internal/pycore_ceval_state.h +137 -0
- package/python/include/python3.13/internal/pycore_code.h +603 -0
- package/python/include/python3.13/internal/pycore_codecs.h +86 -0
- package/python/include/python3.13/internal/pycore_compile.h +118 -0
- package/python/include/python3.13/internal/pycore_complexobject.h +25 -0
- package/python/include/python3.13/internal/pycore_condvar.h +93 -0
- package/python/include/python3.13/internal/pycore_context.h +61 -0
- package/python/include/python3.13/internal/pycore_critical_section.h +233 -0
- package/python/include/python3.13/internal/pycore_crossinterp.h +340 -0
- package/python/include/python3.13/internal/pycore_descrobject.h +28 -0
- package/python/include/python3.13/internal/pycore_dict.h +340 -0
- package/python/include/python3.13/internal/pycore_dict_state.h +32 -0
- package/python/include/python3.13/internal/pycore_dtoa.h +75 -0
- package/python/include/python3.13/internal/pycore_emscripten_signal.h +30 -0
- package/python/include/python3.13/internal/pycore_emscripten_trampoline.h +81 -0
- package/python/include/python3.13/internal/pycore_exceptions.h +40 -0
- package/python/include/python3.13/internal/pycore_faulthandler.h +99 -0
- package/python/include/python3.13/internal/pycore_fileutils.h +335 -0
- package/python/include/python3.13/internal/pycore_fileutils_windows.h +98 -0
- package/python/include/python3.13/internal/pycore_floatobject.h +62 -0
- package/python/include/python3.13/internal/pycore_flowgraph.h +40 -0
- package/python/include/python3.13/internal/pycore_format.h +27 -0
- package/python/include/python3.13/internal/pycore_frame.h +370 -0
- package/python/include/python3.13/internal/pycore_freelist.h +153 -0
- package/python/include/python3.13/internal/pycore_function.h +55 -0
- package/python/include/python3.13/internal/pycore_gc.h +365 -0
- package/python/include/python3.13/internal/pycore_genobject.h +32 -0
- package/python/include/python3.13/internal/pycore_getopt.h +22 -0
- package/python/include/python3.13/internal/pycore_gil.h +66 -0
- package/python/include/python3.13/internal/pycore_global_objects.h +105 -0
- package/python/include/python3.13/internal/pycore_global_objects_fini_generated.h +1554 -0
- package/python/include/python3.13/internal/pycore_global_strings.h +814 -0
- package/python/include/python3.13/internal/pycore_hamt.h +134 -0
- package/python/include/python3.13/internal/pycore_hashtable.h +150 -0
- package/python/include/python3.13/internal/pycore_identifier.h +20 -0
- package/python/include/python3.13/internal/pycore_import.h +213 -0
- package/python/include/python3.13/internal/pycore_importdl.h +139 -0
- package/python/include/python3.13/internal/pycore_initconfig.h +200 -0
- package/python/include/python3.13/internal/pycore_instruction_sequence.h +73 -0
- package/python/include/python3.13/internal/pycore_instruments.h +75 -0
- package/python/include/python3.13/internal/pycore_interp.h +423 -0
- package/python/include/python3.13/internal/pycore_intrinsics.h +51 -0
- package/python/include/python3.13/internal/pycore_jit.h +25 -0
- package/python/include/python3.13/internal/pycore_list.h +66 -0
- package/python/include/python3.13/internal/pycore_llist.h +106 -0
- package/python/include/python3.13/internal/pycore_lock.h +241 -0
- package/python/include/python3.13/internal/pycore_long.h +310 -0
- package/python/include/python3.13/internal/pycore_memoryobject.h +20 -0
- package/python/include/python3.13/internal/pycore_mimalloc.h +69 -0
- package/python/include/python3.13/internal/pycore_modsupport.h +107 -0
- package/python/include/python3.13/internal/pycore_moduleobject.h +56 -0
- package/python/include/python3.13/internal/pycore_namespace.h +21 -0
- package/python/include/python3.13/internal/pycore_object.h +867 -0
- package/python/include/python3.13/internal/pycore_object_alloc.h +71 -0
- package/python/include/python3.13/internal/pycore_object_stack.h +97 -0
- package/python/include/python3.13/internal/pycore_object_state.h +41 -0
- package/python/include/python3.13/internal/pycore_obmalloc.h +702 -0
- package/python/include/python3.13/internal/pycore_obmalloc_init.h +66 -0
- package/python/include/python3.13/internal/pycore_opcode_metadata.h +1922 -0
- package/python/include/python3.13/internal/pycore_opcode_utils.h +73 -0
- package/python/include/python3.13/internal/pycore_optimizer.h +272 -0
- package/python/include/python3.13/internal/pycore_parking_lot.h +97 -0
- package/python/include/python3.13/internal/pycore_parser.h +95 -0
- package/python/include/python3.13/internal/pycore_pathconfig.h +26 -0
- package/python/include/python3.13/internal/pycore_pyarena.h +68 -0
- package/python/include/python3.13/internal/pycore_pyatomic_ft_wrappers.h +165 -0
- package/python/include/python3.13/internal/pycore_pybuffer.h +21 -0
- package/python/include/python3.13/internal/pycore_pyerrors.h +190 -0
- package/python/include/python3.13/internal/pycore_pyhash.h +107 -0
- package/python/include/python3.13/internal/pycore_pylifecycle.h +136 -0
- package/python/include/python3.13/internal/pycore_pymath.h +205 -0
- package/python/include/python3.13/internal/pycore_pymem.h +161 -0
- package/python/include/python3.13/internal/pycore_pymem_init.h +103 -0
- package/python/include/python3.13/internal/pycore_pystate.h +299 -0
- package/python/include/python3.13/internal/pycore_pystats.h +21 -0
- package/python/include/python3.13/internal/pycore_pythonrun.h +39 -0
- package/python/include/python3.13/internal/pycore_pythread.h +172 -0
- package/python/include/python3.13/internal/pycore_qsbr.h +173 -0
- package/python/include/python3.13/internal/pycore_range.h +21 -0
- package/python/include/python3.13/internal/pycore_runtime.h +410 -0
- package/python/include/python3.13/internal/pycore_runtime_init.h +329 -0
- package/python/include/python3.13/internal/pycore_runtime_init_generated.h +1551 -0
- package/python/include/python3.13/internal/pycore_semaphore.h +67 -0
- package/python/include/python3.13/internal/pycore_setobject.h +39 -0
- package/python/include/python3.13/internal/pycore_signal.h +108 -0
- package/python/include/python3.13/internal/pycore_sliceobject.h +20 -0
- package/python/include/python3.13/internal/pycore_stackref.h +195 -0
- package/python/include/python3.13/internal/pycore_strhex.h +39 -0
- package/python/include/python3.13/internal/pycore_structseq.h +40 -0
- package/python/include/python3.13/internal/pycore_symtable.h +204 -0
- package/python/include/python3.13/internal/pycore_sysmodule.h +38 -0
- package/python/include/python3.13/internal/pycore_time.h +337 -0
- package/python/include/python3.13/internal/pycore_token.h +106 -0
- package/python/include/python3.13/internal/pycore_traceback.h +106 -0
- package/python/include/python3.13/internal/pycore_tracemalloc.h +170 -0
- package/python/include/python3.13/internal/pycore_tstate.h +46 -0
- package/python/include/python3.13/internal/pycore_tuple.h +35 -0
- package/python/include/python3.13/internal/pycore_typeobject.h +245 -0
- package/python/include/python3.13/internal/pycore_typevarobject.h +27 -0
- package/python/include/python3.13/internal/pycore_ucnhash.h +36 -0
- package/python/include/python3.13/internal/pycore_unicodeobject.h +351 -0
- package/python/include/python3.13/internal/pycore_unicodeobject_generated.h +2980 -0
- package/python/include/python3.13/internal/pycore_unionobject.h +25 -0
- package/python/include/python3.13/internal/pycore_uop_ids.h +295 -0
- package/python/include/python3.13/internal/pycore_uop_metadata.h +1010 -0
- package/python/include/python3.13/internal/pycore_warnings.h +31 -0
- package/python/include/python3.13/internal/pycore_weakref.h +133 -0
- package/python/include/python3.13/intrcheck.h +23 -0
- package/python/include/python3.13/iterobject.h +24 -0
- package/python/include/python3.13/listobject.h +55 -0
- package/python/include/python3.13/lock.h +16 -0
- package/python/include/python3.13/longobject.h +114 -0
- package/python/include/python3.13/marshal.h +31 -0
- package/python/include/python3.13/memoryobject.h +34 -0
- package/python/include/python3.13/methodobject.h +137 -0
- package/python/include/python3.13/modsupport.h +146 -0
- package/python/include/python3.13/moduleobject.h +122 -0
- package/python/include/python3.13/monitoring.h +18 -0
- package/python/include/python3.13/object.h +1280 -0
- package/python/include/python3.13/objimpl.h +211 -0
- package/python/include/python3.13/opcode.h +42 -0
- package/python/include/python3.13/opcode_ids.h +244 -0
- package/python/include/python3.13/osdefs.h +57 -0
- package/python/include/python3.13/osmodule.h +17 -0
- package/python/include/python3.13/patchlevel.h +35 -0
- package/python/include/python3.13/py_curses.h +117 -0
- package/python/include/python3.13/pyatomic.h +16 -0
- package/python/include/python3.13/pybuffer.h +145 -0
- package/python/include/python3.13/pycapsule.h +58 -0
- package/python/include/python3.13/pyconfig.h +2033 -0
- package/python/include/python3.13/pydtrace.h +59 -0
- package/python/include/python3.13/pyerrors.h +335 -0
- package/python/include/python3.13/pyexpat.h +62 -0
- package/python/include/python3.13/pyframe.h +26 -0
- package/python/include/python3.13/pyhash.h +59 -0
- package/python/include/python3.13/pylifecycle.h +80 -0
- package/python/include/python3.13/pymacconfig.h +91 -0
- package/python/include/python3.13/pymacro.h +199 -0
- package/python/include/python3.13/pymath.h +62 -0
- package/python/include/python3.13/pymem.h +110 -0
- package/python/include/python3.13/pyport.h +633 -0
- package/python/include/python3.13/pystate.h +132 -0
- package/python/include/python3.13/pystats.h +26 -0
- package/python/include/python3.13/pystrcmp.h +23 -0
- package/python/include/python3.13/pystrtod.h +37 -0
- package/python/include/python3.13/pythonrun.h +49 -0
- package/python/include/python3.13/pythread.h +131 -0
- package/python/include/python3.13/pytypedefs.h +30 -0
- package/python/include/python3.13/rangeobject.h +27 -0
- package/python/include/python3.13/setobject.h +49 -0
- package/python/include/python3.13/sliceobject.h +69 -0
- package/python/include/python3.13/structmember.h +56 -0
- package/python/include/python3.13/structseq.h +46 -0
- package/python/include/python3.13/sysmodule.h +44 -0
- package/python/include/python3.13/traceback.h +26 -0
- package/python/include/python3.13/tupleobject.h +46 -0
- package/python/include/python3.13/typeslots.h +88 -0
- package/python/include/python3.13/unicodeobject.h +1021 -0
- package/python/include/python3.13/warnings.h +45 -0
- package/python/include/python3.13/weakrefobject.h +46 -0
- package/python/lib/itcl4.3.5/itcl.tcl +151 -0
- package/python/lib/itcl4.3.5/itclConfig.sh +67 -0
- package/python/lib/itcl4.3.5/itclHullCmds.tcl +562 -0
- package/python/lib/itcl4.3.5/itclWidget.tcl +447 -0
- package/python/lib/itcl4.3.5/libitcl4.3.5.dylib +0 -0
- package/python/lib/itcl4.3.5/libitclstub.a +0 -0
- package/python/lib/itcl4.3.5/libitclstub4.3.5.a +0 -0
- package/python/lib/itcl4.3.5/libtcl9itcl4.3.5.dylib +0 -0
- package/python/lib/itcl4.3.5/pkgIndex.tcl +14 -0
- package/python/lib/libpython3.13.dylib +0 -0
- package/python/lib/libtcl9.0.dylib +0 -0
- package/python/lib/libtcl9tk9.0.dylib +0 -0
- package/python/lib/pkgconfig/python-3.13-embed.pc +13 -0
- package/python/lib/pkgconfig/python-3.13.pc +13 -0
- package/python/lib/python3.13/LICENSE.txt +277 -0
- package/python/lib/python3.13/__future__.py +147 -0
- package/python/lib/python3.13/__hello__.py +16 -0
- package/python/lib/python3.13/__phello__/__init__.py +7 -0
- package/python/lib/python3.13/__phello__/spam.py +7 -0
- package/python/lib/python3.13/_aix_support.py +108 -0
- package/python/lib/python3.13/_android_support.py +192 -0
- package/python/lib/python3.13/_apple_support.py +66 -0
- package/python/lib/python3.13/_collections_abc.py +1182 -0
- package/python/lib/python3.13/_colorize.py +119 -0
- package/python/lib/python3.13/_compat_pickle.py +251 -0
- package/python/lib/python3.13/_compression.py +162 -0
- package/python/lib/python3.13/_ios_support.py +71 -0
- package/python/lib/python3.13/_markupbase.py +396 -0
- package/python/lib/python3.13/_opcode_metadata.py +343 -0
- package/python/lib/python3.13/_osx_support.py +579 -0
- package/python/lib/python3.13/_py_abc.py +147 -0
- package/python/lib/python3.13/_pydatetime.py +2639 -0
- package/python/lib/python3.13/_pydecimal.py +6351 -0
- package/python/lib/python3.13/_pyio.py +2704 -0
- package/python/lib/python3.13/_pylong.py +363 -0
- package/python/lib/python3.13/_pyrepl/__init__.py +19 -0
- package/python/lib/python3.13/_pyrepl/__main__.py +10 -0
- package/python/lib/python3.13/_pyrepl/_minimal_curses.py +68 -0
- package/python/lib/python3.13/_pyrepl/_threading_handler.py +74 -0
- package/python/lib/python3.13/_pyrepl/base_eventqueue.py +110 -0
- package/python/lib/python3.13/_pyrepl/commands.py +492 -0
- package/python/lib/python3.13/_pyrepl/completing_reader.py +295 -0
- package/python/lib/python3.13/_pyrepl/console.py +229 -0
- package/python/lib/python3.13/_pyrepl/curses.py +33 -0
- package/python/lib/python3.13/_pyrepl/fancy_termios.py +82 -0
- package/python/lib/python3.13/_pyrepl/historical_reader.py +419 -0
- package/python/lib/python3.13/_pyrepl/input.py +114 -0
- package/python/lib/python3.13/_pyrepl/keymap.py +213 -0
- package/python/lib/python3.13/_pyrepl/main.py +59 -0
- package/python/lib/python3.13/_pyrepl/mypy.ini +29 -0
- package/python/lib/python3.13/_pyrepl/pager.py +175 -0
- package/python/lib/python3.13/_pyrepl/reader.py +764 -0
- package/python/lib/python3.13/_pyrepl/readline.py +599 -0
- package/python/lib/python3.13/_pyrepl/simple_interact.py +180 -0
- package/python/lib/python3.13/_pyrepl/trace.py +21 -0
- package/python/lib/python3.13/_pyrepl/types.py +10 -0
- package/python/lib/python3.13/_pyrepl/unix_console.py +852 -0
- package/python/lib/python3.13/_pyrepl/unix_eventqueue.py +76 -0
- package/python/lib/python3.13/_pyrepl/utils.py +83 -0
- package/python/lib/python3.13/_pyrepl/windows_console.py +692 -0
- package/python/lib/python3.13/_pyrepl/windows_eventqueue.py +42 -0
- package/python/lib/python3.13/_sitebuiltins.py +91 -0
- package/python/lib/python3.13/_strptime.py +800 -0
- package/python/lib/python3.13/_sysconfigdata__darwin_darwin.py +1028 -0
- package/python/lib/python3.13/_threading_local.py +120 -0
- package/python/lib/python3.13/_weakrefset.py +205 -0
- package/python/lib/python3.13/abc.py +188 -0
- package/python/lib/python3.13/antigravity.py +17 -0
- package/python/lib/python3.13/argparse.py +2690 -0
- package/python/lib/python3.13/ast.py +1865 -0
- package/python/lib/python3.13/asyncio/__init__.py +47 -0
- package/python/lib/python3.13/asyncio/__main__.py +207 -0
- package/python/lib/python3.13/asyncio/base_events.py +2075 -0
- package/python/lib/python3.13/asyncio/base_futures.py +67 -0
- package/python/lib/python3.13/asyncio/base_subprocess.py +319 -0
- package/python/lib/python3.13/asyncio/base_tasks.py +94 -0
- package/python/lib/python3.13/asyncio/constants.py +41 -0
- package/python/lib/python3.13/asyncio/coroutines.py +109 -0
- package/python/lib/python3.13/asyncio/events.py +882 -0
- package/python/lib/python3.13/asyncio/exceptions.py +62 -0
- package/python/lib/python3.13/asyncio/format_helpers.py +84 -0
- package/python/lib/python3.13/asyncio/futures.py +425 -0
- package/python/lib/python3.13/asyncio/locks.py +617 -0
- package/python/lib/python3.13/asyncio/log.py +7 -0
- package/python/lib/python3.13/asyncio/mixins.py +21 -0
- package/python/lib/python3.13/asyncio/proactor_events.py +896 -0
- package/python/lib/python3.13/asyncio/protocols.py +216 -0
- package/python/lib/python3.13/asyncio/queues.py +307 -0
- package/python/lib/python3.13/asyncio/runners.py +216 -0
- package/python/lib/python3.13/asyncio/selector_events.py +1326 -0
- package/python/lib/python3.13/asyncio/sslproto.py +929 -0
- package/python/lib/python3.13/asyncio/staggered.py +174 -0
- package/python/lib/python3.13/asyncio/streams.py +787 -0
- package/python/lib/python3.13/asyncio/subprocess.py +229 -0
- package/python/lib/python3.13/asyncio/taskgroups.py +278 -0
- package/python/lib/python3.13/asyncio/tasks.py +1118 -0
- package/python/lib/python3.13/asyncio/threads.py +25 -0
- package/python/lib/python3.13/asyncio/timeouts.py +184 -0
- package/python/lib/python3.13/asyncio/transports.py +337 -0
- package/python/lib/python3.13/asyncio/trsock.py +98 -0
- package/python/lib/python3.13/asyncio/unix_events.py +1536 -0
- package/python/lib/python3.13/asyncio/windows_events.py +903 -0
- package/python/lib/python3.13/asyncio/windows_utils.py +173 -0
- package/python/lib/python3.13/base64.py +621 -0
- package/python/lib/python3.13/bdb.py +973 -0
- package/python/lib/python3.13/bisect.py +118 -0
- package/python/lib/python3.13/bz2.py +352 -0
- package/python/lib/python3.13/cProfile.py +197 -0
- package/python/lib/python3.13/calendar.py +813 -0
- package/python/lib/python3.13/cmd.py +409 -0
- package/python/lib/python3.13/code.py +386 -0
- package/python/lib/python3.13/codecs.py +1132 -0
- package/python/lib/python3.13/codeop.py +155 -0
- package/python/lib/python3.13/collections/__init__.py +1600 -0
- package/python/lib/python3.13/colorsys.py +166 -0
- package/python/lib/python3.13/compileall.py +470 -0
- package/python/lib/python3.13/concurrent/__init__.py +1 -0
- package/python/lib/python3.13/concurrent/futures/__init__.py +54 -0
- package/python/lib/python3.13/concurrent/futures/_base.py +654 -0
- package/python/lib/python3.13/concurrent/futures/process.py +862 -0
- package/python/lib/python3.13/concurrent/futures/thread.py +240 -0
- package/python/lib/python3.13/config-3.13-darwin/Makefile +3505 -0
- package/python/lib/python3.13/config-3.13-darwin/Setup +298 -0
- package/python/lib/python3.13/config-3.13-darwin/Setup.bootstrap +38 -0
- package/python/lib/python3.13/config-3.13-darwin/Setup.local +89 -0
- package/python/lib/python3.13/config-3.13-darwin/Setup.stdlib +181 -0
- package/python/lib/python3.13/config-3.13-darwin/config.c +260 -0
- package/python/lib/python3.13/config-3.13-darwin/config.c.in +71 -0
- package/python/lib/python3.13/config-3.13-darwin/install-sh +541 -0
- package/python/lib/python3.13/config-3.13-darwin/makesetup +341 -0
- package/python/lib/python3.13/config-3.13-darwin/python-config.py +76 -0
- package/python/lib/python3.13/config-3.13-darwin/python.o +0 -0
- package/python/lib/python3.13/configparser.py +1387 -0
- package/python/lib/python3.13/contextlib.py +814 -0
- package/python/lib/python3.13/contextvars.py +4 -0
- package/python/lib/python3.13/copy.py +306 -0
- package/python/lib/python3.13/copyreg.py +217 -0
- package/python/lib/python3.13/csv.py +513 -0
- package/python/lib/python3.13/ctypes/__init__.py +603 -0
- package/python/lib/python3.13/ctypes/_aix.py +327 -0
- package/python/lib/python3.13/ctypes/_endian.py +78 -0
- package/python/lib/python3.13/ctypes/macholib/README.ctypes +7 -0
- package/python/lib/python3.13/ctypes/macholib/__init__.py +9 -0
- package/python/lib/python3.13/ctypes/macholib/dyld.py +165 -0
- package/python/lib/python3.13/ctypes/macholib/dylib.py +42 -0
- package/python/lib/python3.13/ctypes/macholib/fetch_macholib +2 -0
- package/python/lib/python3.13/ctypes/macholib/fetch_macholib.bat +1 -0
- package/python/lib/python3.13/ctypes/macholib/framework.py +42 -0
- package/python/lib/python3.13/ctypes/util.py +388 -0
- package/python/lib/python3.13/ctypes/wintypes.py +202 -0
- package/python/lib/python3.13/curses/__init__.py +101 -0
- package/python/lib/python3.13/curses/ascii.py +99 -0
- package/python/lib/python3.13/curses/has_key.py +192 -0
- package/python/lib/python3.13/curses/panel.py +6 -0
- package/python/lib/python3.13/curses/textpad.py +204 -0
- package/python/lib/python3.13/dataclasses.py +1630 -0
- package/python/lib/python3.13/datetime.py +9 -0
- package/python/lib/python3.13/dbm/__init__.py +194 -0
- package/python/lib/python3.13/dbm/dumb.py +319 -0
- package/python/lib/python3.13/dbm/gnu.py +3 -0
- package/python/lib/python3.13/dbm/ndbm.py +3 -0
- package/python/lib/python3.13/dbm/sqlite3.py +144 -0
- package/python/lib/python3.13/decimal.py +109 -0
- package/python/lib/python3.13/difflib.py +2056 -0
- package/python/lib/python3.13/dis.py +1075 -0
- package/python/lib/python3.13/doctest.py +2919 -0
- package/python/lib/python3.13/email/__init__.py +61 -0
- package/python/lib/python3.13/email/_encoded_words.py +233 -0
- package/python/lib/python3.13/email/_header_value_parser.py +3145 -0
- package/python/lib/python3.13/email/_parseaddr.py +563 -0
- package/python/lib/python3.13/email/_policybase.py +382 -0
- package/python/lib/python3.13/email/architecture.rst +216 -0
- package/python/lib/python3.13/email/base64mime.py +115 -0
- package/python/lib/python3.13/email/charset.py +398 -0
- package/python/lib/python3.13/email/contentmanager.py +253 -0
- package/python/lib/python3.13/email/encoders.py +65 -0
- package/python/lib/python3.13/email/errors.py +117 -0
- package/python/lib/python3.13/email/feedparser.py +536 -0
- package/python/lib/python3.13/email/generator.py +530 -0
- package/python/lib/python3.13/email/header.py +582 -0
- package/python/lib/python3.13/email/headerregistry.py +618 -0
- package/python/lib/python3.13/email/iterators.py +68 -0
- package/python/lib/python3.13/email/message.py +1217 -0
- package/python/lib/python3.13/email/mime/__init__.py +0 -0
- package/python/lib/python3.13/email/mime/application.py +37 -0
- package/python/lib/python3.13/email/mime/audio.py +97 -0
- package/python/lib/python3.13/email/mime/base.py +29 -0
- package/python/lib/python3.13/email/mime/image.py +152 -0
- package/python/lib/python3.13/email/mime/message.py +33 -0
- package/python/lib/python3.13/email/mime/multipart.py +47 -0
- package/python/lib/python3.13/email/mime/nonmultipart.py +21 -0
- package/python/lib/python3.13/email/mime/text.py +40 -0
- package/python/lib/python3.13/email/parser.py +127 -0
- package/python/lib/python3.13/email/policy.py +232 -0
- package/python/lib/python3.13/email/quoprimime.py +300 -0
- package/python/lib/python3.13/email/utils.py +494 -0
- package/python/lib/python3.13/encodings/__init__.py +174 -0
- package/python/lib/python3.13/encodings/aliases.py +552 -0
- package/python/lib/python3.13/encodings/ascii.py +50 -0
- package/python/lib/python3.13/encodings/base64_codec.py +55 -0
- package/python/lib/python3.13/encodings/big5.py +39 -0
- package/python/lib/python3.13/encodings/big5hkscs.py +39 -0
- package/python/lib/python3.13/encodings/bz2_codec.py +78 -0
- package/python/lib/python3.13/encodings/charmap.py +69 -0
- package/python/lib/python3.13/encodings/cp037.py +307 -0
- package/python/lib/python3.13/encodings/cp1006.py +307 -0
- package/python/lib/python3.13/encodings/cp1026.py +307 -0
- package/python/lib/python3.13/encodings/cp1125.py +698 -0
- package/python/lib/python3.13/encodings/cp1140.py +307 -0
- package/python/lib/python3.13/encodings/cp1250.py +307 -0
- package/python/lib/python3.13/encodings/cp1251.py +307 -0
- package/python/lib/python3.13/encodings/cp1252.py +307 -0
- package/python/lib/python3.13/encodings/cp1253.py +307 -0
- package/python/lib/python3.13/encodings/cp1254.py +307 -0
- package/python/lib/python3.13/encodings/cp1255.py +307 -0
- package/python/lib/python3.13/encodings/cp1256.py +307 -0
- package/python/lib/python3.13/encodings/cp1257.py +307 -0
- package/python/lib/python3.13/encodings/cp1258.py +307 -0
- package/python/lib/python3.13/encodings/cp273.py +307 -0
- package/python/lib/python3.13/encodings/cp424.py +307 -0
- package/python/lib/python3.13/encodings/cp437.py +698 -0
- package/python/lib/python3.13/encodings/cp500.py +307 -0
- package/python/lib/python3.13/encodings/cp720.py +309 -0
- package/python/lib/python3.13/encodings/cp737.py +698 -0
- package/python/lib/python3.13/encodings/cp775.py +697 -0
- package/python/lib/python3.13/encodings/cp850.py +698 -0
- package/python/lib/python3.13/encodings/cp852.py +698 -0
- package/python/lib/python3.13/encodings/cp855.py +698 -0
- package/python/lib/python3.13/encodings/cp856.py +307 -0
- package/python/lib/python3.13/encodings/cp857.py +694 -0
- package/python/lib/python3.13/encodings/cp858.py +698 -0
- package/python/lib/python3.13/encodings/cp860.py +698 -0
- package/python/lib/python3.13/encodings/cp861.py +698 -0
- package/python/lib/python3.13/encodings/cp862.py +698 -0
- package/python/lib/python3.13/encodings/cp863.py +698 -0
- package/python/lib/python3.13/encodings/cp864.py +690 -0
- package/python/lib/python3.13/encodings/cp865.py +698 -0
- package/python/lib/python3.13/encodings/cp866.py +698 -0
- package/python/lib/python3.13/encodings/cp869.py +689 -0
- package/python/lib/python3.13/encodings/cp874.py +307 -0
- package/python/lib/python3.13/encodings/cp875.py +307 -0
- package/python/lib/python3.13/encodings/cp932.py +39 -0
- package/python/lib/python3.13/encodings/cp949.py +39 -0
- package/python/lib/python3.13/encodings/cp950.py +39 -0
- package/python/lib/python3.13/encodings/euc_jis_2004.py +39 -0
- package/python/lib/python3.13/encodings/euc_jisx0213.py +39 -0
- package/python/lib/python3.13/encodings/euc_jp.py +39 -0
- package/python/lib/python3.13/encodings/euc_kr.py +39 -0
- package/python/lib/python3.13/encodings/gb18030.py +39 -0
- package/python/lib/python3.13/encodings/gb2312.py +39 -0
- package/python/lib/python3.13/encodings/gbk.py +39 -0
- package/python/lib/python3.13/encodings/hex_codec.py +55 -0
- package/python/lib/python3.13/encodings/hp_roman8.py +314 -0
- package/python/lib/python3.13/encodings/hz.py +39 -0
- package/python/lib/python3.13/encodings/idna.py +387 -0
- package/python/lib/python3.13/encodings/iso2022_jp.py +39 -0
- package/python/lib/python3.13/encodings/iso2022_jp_1.py +39 -0
- package/python/lib/python3.13/encodings/iso2022_jp_2.py +39 -0
- package/python/lib/python3.13/encodings/iso2022_jp_2004.py +39 -0
- package/python/lib/python3.13/encodings/iso2022_jp_3.py +39 -0
- package/python/lib/python3.13/encodings/iso2022_jp_ext.py +39 -0
- package/python/lib/python3.13/encodings/iso2022_kr.py +39 -0
- package/python/lib/python3.13/encodings/iso8859_1.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_10.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_11.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_13.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_14.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_15.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_16.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_2.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_3.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_4.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_5.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_6.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_7.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_8.py +307 -0
- package/python/lib/python3.13/encodings/iso8859_9.py +307 -0
- package/python/lib/python3.13/encodings/johab.py +39 -0
- package/python/lib/python3.13/encodings/koi8_r.py +307 -0
- package/python/lib/python3.13/encodings/koi8_t.py +308 -0
- package/python/lib/python3.13/encodings/koi8_u.py +307 -0
- package/python/lib/python3.13/encodings/kz1048.py +307 -0
- package/python/lib/python3.13/encodings/latin_1.py +50 -0
- package/python/lib/python3.13/encodings/mac_arabic.py +698 -0
- package/python/lib/python3.13/encodings/mac_croatian.py +307 -0
- package/python/lib/python3.13/encodings/mac_cyrillic.py +307 -0
- package/python/lib/python3.13/encodings/mac_farsi.py +307 -0
- package/python/lib/python3.13/encodings/mac_greek.py +307 -0
- package/python/lib/python3.13/encodings/mac_iceland.py +307 -0
- package/python/lib/python3.13/encodings/mac_latin2.py +312 -0
- package/python/lib/python3.13/encodings/mac_roman.py +307 -0
- package/python/lib/python3.13/encodings/mac_romanian.py +307 -0
- package/python/lib/python3.13/encodings/mac_turkish.py +307 -0
- package/python/lib/python3.13/encodings/mbcs.py +47 -0
- package/python/lib/python3.13/encodings/oem.py +41 -0
- package/python/lib/python3.13/encodings/palmos.py +308 -0
- package/python/lib/python3.13/encodings/ptcp154.py +312 -0
- package/python/lib/python3.13/encodings/punycode.py +253 -0
- package/python/lib/python3.13/encodings/quopri_codec.py +56 -0
- package/python/lib/python3.13/encodings/raw_unicode_escape.py +46 -0
- package/python/lib/python3.13/encodings/rot_13.py +113 -0
- package/python/lib/python3.13/encodings/shift_jis.py +39 -0
- package/python/lib/python3.13/encodings/shift_jis_2004.py +39 -0
- package/python/lib/python3.13/encodings/shift_jisx0213.py +39 -0
- package/python/lib/python3.13/encodings/tis_620.py +307 -0
- package/python/lib/python3.13/encodings/undefined.py +49 -0
- package/python/lib/python3.13/encodings/unicode_escape.py +46 -0
- package/python/lib/python3.13/encodings/utf_16.py +155 -0
- package/python/lib/python3.13/encodings/utf_16_be.py +42 -0
- package/python/lib/python3.13/encodings/utf_16_le.py +42 -0
- package/python/lib/python3.13/encodings/utf_32.py +150 -0
- package/python/lib/python3.13/encodings/utf_32_be.py +37 -0
- package/python/lib/python3.13/encodings/utf_32_le.py +37 -0
- package/python/lib/python3.13/encodings/utf_7.py +38 -0
- package/python/lib/python3.13/encodings/utf_8.py +42 -0
- package/python/lib/python3.13/encodings/utf_8_sig.py +130 -0
- package/python/lib/python3.13/encodings/uu_codec.py +103 -0
- package/python/lib/python3.13/encodings/zlib_codec.py +77 -0
- package/python/lib/python3.13/ensurepip/__init__.py +264 -0
- package/python/lib/python3.13/ensurepip/__main__.py +5 -0
- package/python/lib/python3.13/ensurepip/_bundled/pip-25.3-py3-none-any.whl +0 -0
- package/python/lib/python3.13/ensurepip/_uninstall.py +31 -0
- package/python/lib/python3.13/enum.py +2182 -0
- package/python/lib/python3.13/filecmp.py +320 -0
- package/python/lib/python3.13/fileinput.py +442 -0
- package/python/lib/python3.13/fnmatch.py +192 -0
- package/python/lib/python3.13/fractions.py +1043 -0
- package/python/lib/python3.13/ftplib.py +966 -0
- package/python/lib/python3.13/functools.py +1036 -0
- package/python/lib/python3.13/genericpath.py +200 -0
- package/python/lib/python3.13/getopt.py +215 -0
- package/python/lib/python3.13/getpass.py +192 -0
- package/python/lib/python3.13/gettext.py +657 -0
- package/python/lib/python3.13/glob.py +551 -0
- package/python/lib/python3.13/graphlib.py +250 -0
- package/python/lib/python3.13/gzip.py +691 -0
- package/python/lib/python3.13/hashlib.py +255 -0
- package/python/lib/python3.13/heapq.py +603 -0
- package/python/lib/python3.13/hmac.py +220 -0
- package/python/lib/python3.13/html/__init__.py +132 -0
- package/python/lib/python3.13/html/entities.py +2513 -0
- package/python/lib/python3.13/html/parser.py +553 -0
- package/python/lib/python3.13/http/__init__.py +202 -0
- package/python/lib/python3.13/http/client.py +1570 -0
- package/python/lib/python3.13/http/cookiejar.py +2122 -0
- package/python/lib/python3.13/http/cookies.py +615 -0
- package/python/lib/python3.13/http/server.py +1351 -0
- package/python/lib/python3.13/idlelib/CREDITS.txt +48 -0
- package/python/lib/python3.13/idlelib/ChangeLog +1591 -0
- package/python/lib/python3.13/idlelib/HISTORY.txt +296 -0
- package/python/lib/python3.13/idlelib/Icons/README.txt +51 -0
- package/python/lib/python3.13/idlelib/Icons/folder.gif +0 -0
- package/python/lib/python3.13/idlelib/Icons/idle.ico +0 -0
- package/python/lib/python3.13/idlelib/Icons/idle_16.gif +0 -0
- package/python/lib/python3.13/idlelib/Icons/idle_16.png +0 -0
- package/python/lib/python3.13/idlelib/Icons/idle_256.png +0 -0
- package/python/lib/python3.13/idlelib/Icons/idle_32.gif +0 -0
- package/python/lib/python3.13/idlelib/Icons/idle_32.png +0 -0
- package/python/lib/python3.13/idlelib/Icons/idle_48.gif +0 -0
- package/python/lib/python3.13/idlelib/Icons/idle_48.png +0 -0
- package/python/lib/python3.13/idlelib/Icons/minusnode.gif +0 -0
- package/python/lib/python3.13/idlelib/Icons/openfolder.gif +0 -0
- package/python/lib/python3.13/idlelib/Icons/plusnode.gif +0 -0
- package/python/lib/python3.13/idlelib/Icons/python.gif +0 -0
- package/python/lib/python3.13/idlelib/Icons/tk.gif +0 -0
- package/python/lib/python3.13/idlelib/NEWS2x.txt +660 -0
- package/python/lib/python3.13/idlelib/News3.txt +1407 -0
- package/python/lib/python3.13/idlelib/README.txt +290 -0
- package/python/lib/python3.13/idlelib/TODO.txt +210 -0
- package/python/lib/python3.13/idlelib/__init__.py +10 -0
- package/python/lib/python3.13/idlelib/__main__.py +7 -0
- package/python/lib/python3.13/idlelib/autocomplete.py +228 -0
- package/python/lib/python3.13/idlelib/autocomplete_w.py +498 -0
- package/python/lib/python3.13/idlelib/autoexpand.py +96 -0
- package/python/lib/python3.13/idlelib/browser.py +260 -0
- package/python/lib/python3.13/idlelib/calltip.py +205 -0
- package/python/lib/python3.13/idlelib/calltip_w.py +202 -0
- package/python/lib/python3.13/idlelib/codecontext.py +270 -0
- package/python/lib/python3.13/idlelib/colorizer.py +384 -0
- package/python/lib/python3.13/idlelib/config-extensions.def +62 -0
- package/python/lib/python3.13/idlelib/config-highlight.def +105 -0
- package/python/lib/python3.13/idlelib/config-keys.def +309 -0
- package/python/lib/python3.13/idlelib/config-main.def +92 -0
- package/python/lib/python3.13/idlelib/config.py +917 -0
- package/python/lib/python3.13/idlelib/config_key.py +354 -0
- package/python/lib/python3.13/idlelib/configdialog.py +2408 -0
- package/python/lib/python3.13/idlelib/debugger.py +602 -0
- package/python/lib/python3.13/idlelib/debugger_r.py +390 -0
- package/python/lib/python3.13/idlelib/debugobj.py +146 -0
- package/python/lib/python3.13/idlelib/debugobj_r.py +41 -0
- package/python/lib/python3.13/idlelib/delegator.py +34 -0
- package/python/lib/python3.13/idlelib/dynoption.py +57 -0
- package/python/lib/python3.13/idlelib/editor.py +1721 -0
- package/python/lib/python3.13/idlelib/extend.txt +83 -0
- package/python/lib/python3.13/idlelib/filelist.py +132 -0
- package/python/lib/python3.13/idlelib/format.py +426 -0
- package/python/lib/python3.13/idlelib/grep.py +223 -0
- package/python/lib/python3.13/idlelib/help.html +865 -0
- package/python/lib/python3.13/idlelib/help.py +343 -0
- package/python/lib/python3.13/idlelib/help_about.py +211 -0
- package/python/lib/python3.13/idlelib/history.py +106 -0
- package/python/lib/python3.13/idlelib/hyperparser.py +312 -0
- package/python/lib/python3.13/idlelib/idle.bat +4 -0
- package/python/lib/python3.13/idlelib/idle.py +14 -0
- package/python/lib/python3.13/idlelib/idle.pyw +17 -0
- package/python/lib/python3.13/idlelib/iomenu.py +441 -0
- package/python/lib/python3.13/idlelib/macosx.py +278 -0
- package/python/lib/python3.13/idlelib/mainmenu.py +126 -0
- package/python/lib/python3.13/idlelib/multicall.py +451 -0
- package/python/lib/python3.13/idlelib/outwin.py +188 -0
- package/python/lib/python3.13/idlelib/parenmatch.py +183 -0
- package/python/lib/python3.13/idlelib/pathbrowser.py +107 -0
- package/python/lib/python3.13/idlelib/percolator.py +120 -0
- package/python/lib/python3.13/idlelib/pyparse.py +589 -0
- package/python/lib/python3.13/idlelib/pyshell.py +1699 -0
- package/python/lib/python3.13/idlelib/query.py +390 -0
- package/python/lib/python3.13/idlelib/redirector.py +174 -0
- package/python/lib/python3.13/idlelib/replace.py +299 -0
- package/python/lib/python3.13/idlelib/rpc.py +635 -0
- package/python/lib/python3.13/idlelib/run.py +653 -0
- package/python/lib/python3.13/idlelib/runscript.py +213 -0
- package/python/lib/python3.13/idlelib/scrolledlist.py +151 -0
- package/python/lib/python3.13/idlelib/search.py +165 -0
- package/python/lib/python3.13/idlelib/searchbase.py +210 -0
- package/python/lib/python3.13/idlelib/searchengine.py +234 -0
- package/python/lib/python3.13/idlelib/sidebar.py +543 -0
- package/python/lib/python3.13/idlelib/squeezer.py +345 -0
- package/python/lib/python3.13/idlelib/stackviewer.py +134 -0
- package/python/lib/python3.13/idlelib/statusbar.py +52 -0
- package/python/lib/python3.13/idlelib/textview.py +193 -0
- package/python/lib/python3.13/idlelib/tooltip.py +190 -0
- package/python/lib/python3.13/idlelib/tree.py +509 -0
- package/python/lib/python3.13/idlelib/undo.py +367 -0
- package/python/lib/python3.13/idlelib/util.py +37 -0
- package/python/lib/python3.13/idlelib/window.py +98 -0
- package/python/lib/python3.13/idlelib/zoomheight.py +124 -0
- package/python/lib/python3.13/idlelib/zzdummy.py +73 -0
- package/python/lib/python3.13/imaplib.py +1651 -0
- package/python/lib/python3.13/importlib/__init__.py +136 -0
- package/python/lib/python3.13/importlib/_abc.py +39 -0
- package/python/lib/python3.13/importlib/_bootstrap.py +1551 -0
- package/python/lib/python3.13/importlib/_bootstrap_external.py +1826 -0
- package/python/lib/python3.13/importlib/abc.py +243 -0
- package/python/lib/python3.13/importlib/machinery.py +21 -0
- package/python/lib/python3.13/importlib/metadata/__init__.py +1093 -0
- package/python/lib/python3.13/importlib/metadata/_adapters.py +89 -0
- package/python/lib/python3.13/importlib/metadata/_collections.py +30 -0
- package/python/lib/python3.13/importlib/metadata/_functools.py +104 -0
- package/python/lib/python3.13/importlib/metadata/_itertools.py +73 -0
- package/python/lib/python3.13/importlib/metadata/_meta.py +67 -0
- package/python/lib/python3.13/importlib/metadata/_text.py +99 -0
- package/python/lib/python3.13/importlib/metadata/diagnose.py +21 -0
- package/python/lib/python3.13/importlib/readers.py +12 -0
- package/python/lib/python3.13/importlib/resources/__init__.py +43 -0
- package/python/lib/python3.13/importlib/resources/_adapters.py +168 -0
- package/python/lib/python3.13/importlib/resources/_common.py +211 -0
- package/python/lib/python3.13/importlib/resources/_functional.py +81 -0
- package/python/lib/python3.13/importlib/resources/_itertools.py +38 -0
- package/python/lib/python3.13/importlib/resources/abc.py +173 -0
- package/python/lib/python3.13/importlib/resources/readers.py +203 -0
- package/python/lib/python3.13/importlib/resources/simple.py +106 -0
- package/python/lib/python3.13/importlib/simple.py +14 -0
- package/python/lib/python3.13/importlib/util.py +274 -0
- package/python/lib/python3.13/inspect.py +3471 -0
- package/python/lib/python3.13/io.py +99 -0
- package/python/lib/python3.13/ipaddress.py +2440 -0
- package/python/lib/python3.13/json/__init__.py +365 -0
- package/python/lib/python3.13/json/decoder.py +364 -0
- package/python/lib/python3.13/json/encoder.py +446 -0
- package/python/lib/python3.13/json/scanner.py +73 -0
- package/python/lib/python3.13/json/tool.py +89 -0
- package/python/lib/python3.13/keyword.py +64 -0
- package/python/lib/python3.13/lib-dynload/.empty +0 -0
- package/python/lib/python3.13/lib-dynload/_ctypes_test.cpython-313-darwin.so +0 -0
- package/python/lib/python3.13/lib-dynload/_dbm.cpython-313-darwin.so +0 -0
- package/python/lib/python3.13/lib-dynload/_tkinter.cpython-313-darwin.so +0 -0
- package/python/lib/python3.13/linecache.py +236 -0
- package/python/lib/python3.13/locale.py +1778 -0
- package/python/lib/python3.13/logging/__init__.py +2326 -0
- package/python/lib/python3.13/logging/config.py +1065 -0
- package/python/lib/python3.13/logging/handlers.py +1629 -0
- package/python/lib/python3.13/lzma.py +364 -0
- package/python/lib/python3.13/mailbox.py +2219 -0
- package/python/lib/python3.13/mimetypes.py +679 -0
- package/python/lib/python3.13/modulefinder.py +671 -0
- package/python/lib/python3.13/multiprocessing/__init__.py +37 -0
- package/python/lib/python3.13/multiprocessing/connection.py +1190 -0
- package/python/lib/python3.13/multiprocessing/context.py +377 -0
- package/python/lib/python3.13/multiprocessing/dummy/__init__.py +126 -0
- package/python/lib/python3.13/multiprocessing/dummy/connection.py +75 -0
- package/python/lib/python3.13/multiprocessing/forkserver.py +364 -0
- package/python/lib/python3.13/multiprocessing/heap.py +337 -0
- package/python/lib/python3.13/multiprocessing/managers.py +1397 -0
- package/python/lib/python3.13/multiprocessing/pool.py +957 -0
- package/python/lib/python3.13/multiprocessing/popen_fork.py +87 -0
- package/python/lib/python3.13/multiprocessing/popen_forkserver.py +74 -0
- package/python/lib/python3.13/multiprocessing/popen_spawn_posix.py +76 -0
- package/python/lib/python3.13/multiprocessing/popen_spawn_win32.py +147 -0
- package/python/lib/python3.13/multiprocessing/process.py +436 -0
- package/python/lib/python3.13/multiprocessing/queues.py +399 -0
- package/python/lib/python3.13/multiprocessing/reduction.py +281 -0
- package/python/lib/python3.13/multiprocessing/resource_sharer.py +154 -0
- package/python/lib/python3.13/multiprocessing/resource_tracker.py +420 -0
- package/python/lib/python3.13/multiprocessing/shared_memory.py +544 -0
- package/python/lib/python3.13/multiprocessing/sharedctypes.py +240 -0
- package/python/lib/python3.13/multiprocessing/spawn.py +307 -0
- package/python/lib/python3.13/multiprocessing/synchronize.py +404 -0
- package/python/lib/python3.13/multiprocessing/util.py +562 -0
- package/python/lib/python3.13/netrc.py +199 -0
- package/python/lib/python3.13/ntpath.py +870 -0
- package/python/lib/python3.13/nturl2path.py +69 -0
- package/python/lib/python3.13/numbers.py +427 -0
- package/python/lib/python3.13/opcode.py +115 -0
- package/python/lib/python3.13/operator.py +467 -0
- package/python/lib/python3.13/optparse.py +1681 -0
- package/python/lib/python3.13/os.py +1184 -0
- package/python/lib/python3.13/pathlib/__init__.py +12 -0
- package/python/lib/python3.13/pathlib/_abc.py +930 -0
- package/python/lib/python3.13/pathlib/_local.py +861 -0
- package/python/lib/python3.13/pdb.py +2550 -0
- package/python/lib/python3.13/pickle.py +1866 -0
- package/python/lib/python3.13/pickletools.py +2904 -0
- package/python/lib/python3.13/pkgutil.py +529 -0
- package/python/lib/python3.13/platform.py +1454 -0
- package/python/lib/python3.13/plistlib.py +948 -0
- package/python/lib/python3.13/poplib.py +477 -0
- package/python/lib/python3.13/posixpath.py +578 -0
- package/python/lib/python3.13/pprint.py +658 -0
- package/python/lib/python3.13/profile.py +616 -0
- package/python/lib/python3.13/pstats.py +778 -0
- package/python/lib/python3.13/pty.py +211 -0
- package/python/lib/python3.13/py_compile.py +212 -0
- package/python/lib/python3.13/pyclbr.py +314 -0
- package/python/lib/python3.13/pydoc.py +2859 -0
- package/python/lib/python3.13/pydoc_data/__init__.py +0 -0
- package/python/lib/python3.13/pydoc_data/_pydoc.css +112 -0
- package/python/lib/python3.13/pydoc_data/module_docs.py +314 -0
- package/python/lib/python3.13/pydoc_data/topics.py +13000 -0
- package/python/lib/python3.13/queue.py +383 -0
- package/python/lib/python3.13/quopri.py +237 -0
- package/python/lib/python3.13/random.py +1070 -0
- package/python/lib/python3.13/re/__init__.py +428 -0
- package/python/lib/python3.13/re/_casefix.py +106 -0
- package/python/lib/python3.13/re/_compiler.py +768 -0
- package/python/lib/python3.13/re/_constants.py +222 -0
- package/python/lib/python3.13/re/_parser.py +1081 -0
- package/python/lib/python3.13/reprlib.py +230 -0
- package/python/lib/python3.13/rlcompleter.py +221 -0
- package/python/lib/python3.13/runpy.py +319 -0
- package/python/lib/python3.13/sched.py +167 -0
- package/python/lib/python3.13/secrets.py +71 -0
- package/python/lib/python3.13/selectors.py +603 -0
- package/python/lib/python3.13/shelve.py +250 -0
- package/python/lib/python3.13/shlex.py +345 -0
- package/python/lib/python3.13/shutil.py +1583 -0
- package/python/lib/python3.13/signal.py +94 -0
- package/python/lib/python3.13/site-packages/README.txt +2 -0
- package/python/lib/python3.13/site-packages/pip/__init__.py +13 -0
- package/python/lib/python3.13/site-packages/pip/__main__.py +24 -0
- package/python/lib/python3.13/site-packages/pip/__pip-runner__.py +50 -0
- package/python/lib/python3.13/site-packages/pip/_internal/__init__.py +18 -0
- package/python/lib/python3.13/site-packages/pip/_internal/build_env.py +606 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cache.py +291 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/__init__.py +3 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/autocompletion.py +184 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/base_command.py +255 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/cmdoptions.py +1267 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/command_context.py +28 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/index_command.py +195 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/main.py +85 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/main_parser.py +136 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/parser.py +358 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/progress_bars.py +153 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/req_command.py +447 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/spinners.py +235 -0
- package/python/lib/python3.13/site-packages/pip/_internal/cli/status_codes.py +6 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/__init__.py +139 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/cache.py +255 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/check.py +66 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/completion.py +136 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/configuration.py +288 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/debug.py +203 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/download.py +146 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/freeze.py +107 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/hash.py +58 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/help.py +40 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/index.py +166 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/inspect.py +92 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/install.py +810 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/list.py +398 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/lock.py +175 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/search.py +178 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/show.py +231 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/uninstall.py +113 -0
- package/python/lib/python3.13/site-packages/pip/_internal/commands/wheel.py +171 -0
- package/python/lib/python3.13/site-packages/pip/_internal/configuration.py +396 -0
- package/python/lib/python3.13/site-packages/pip/_internal/distributions/__init__.py +21 -0
- package/python/lib/python3.13/site-packages/pip/_internal/distributions/base.py +55 -0
- package/python/lib/python3.13/site-packages/pip/_internal/distributions/installed.py +33 -0
- package/python/lib/python3.13/site-packages/pip/_internal/distributions/sdist.py +164 -0
- package/python/lib/python3.13/site-packages/pip/_internal/distributions/wheel.py +44 -0
- package/python/lib/python3.13/site-packages/pip/_internal/exceptions.py +971 -0
- package/python/lib/python3.13/site-packages/pip/_internal/index/__init__.py +1 -0
- package/python/lib/python3.13/site-packages/pip/_internal/index/collector.py +488 -0
- package/python/lib/python3.13/site-packages/pip/_internal/index/package_finder.py +1125 -0
- package/python/lib/python3.13/site-packages/pip/_internal/index/sources.py +287 -0
- package/python/lib/python3.13/site-packages/pip/_internal/locations/__init__.py +440 -0
- package/python/lib/python3.13/site-packages/pip/_internal/locations/_distutils.py +173 -0
- package/python/lib/python3.13/site-packages/pip/_internal/locations/_sysconfig.py +218 -0
- package/python/lib/python3.13/site-packages/pip/_internal/locations/base.py +82 -0
- package/python/lib/python3.13/site-packages/pip/_internal/main.py +12 -0
- package/python/lib/python3.13/site-packages/pip/_internal/metadata/__init__.py +169 -0
- package/python/lib/python3.13/site-packages/pip/_internal/metadata/_json.py +87 -0
- package/python/lib/python3.13/site-packages/pip/_internal/metadata/base.py +685 -0
- package/python/lib/python3.13/site-packages/pip/_internal/metadata/importlib/__init__.py +6 -0
- package/python/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_compat.py +87 -0
- package/python/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_dists.py +229 -0
- package/python/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_envs.py +143 -0
- package/python/lib/python3.13/site-packages/pip/_internal/metadata/pkg_resources.py +298 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/__init__.py +1 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/candidate.py +25 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/direct_url.py +227 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/format_control.py +78 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/index.py +28 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/installation_report.py +57 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/link.py +617 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/release_control.py +92 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/scheme.py +25 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/search_scope.py +126 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/selection_prefs.py +56 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/target_python.py +122 -0
- package/python/lib/python3.13/site-packages/pip/_internal/models/wheel.py +80 -0
- package/python/lib/python3.13/site-packages/pip/_internal/network/__init__.py +1 -0
- package/python/lib/python3.13/site-packages/pip/_internal/network/auth.py +568 -0
- package/python/lib/python3.13/site-packages/pip/_internal/network/cache.py +128 -0
- package/python/lib/python3.13/site-packages/pip/_internal/network/download.py +341 -0
- package/python/lib/python3.13/site-packages/pip/_internal/network/lazy_wheel.py +215 -0
- package/python/lib/python3.13/site-packages/pip/_internal/network/session.py +532 -0
- package/python/lib/python3.13/site-packages/pip/_internal/network/utils.py +98 -0
- package/python/lib/python3.13/site-packages/pip/_internal/network/xmlrpc.py +61 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/__init__.py +0 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/build/__init__.py +0 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/build/build_tracker.py +140 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/build/metadata.py +38 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/build/metadata_editable.py +41 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/build/wheel.py +38 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/build/wheel_editable.py +47 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/check.py +175 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/freeze.py +259 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/install/__init__.py +1 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/install/wheel.py +745 -0
- package/python/lib/python3.13/site-packages/pip/_internal/operations/prepare.py +747 -0
- package/python/lib/python3.13/site-packages/pip/_internal/pyproject.py +123 -0
- package/python/lib/python3.13/site-packages/pip/_internal/req/__init__.py +103 -0
- package/python/lib/python3.13/site-packages/pip/_internal/req/constructors.py +568 -0
- package/python/lib/python3.13/site-packages/pip/_internal/req/pep723.py +41 -0
- package/python/lib/python3.13/site-packages/pip/_internal/req/req_dependency_group.py +75 -0
- package/python/lib/python3.13/site-packages/pip/_internal/req/req_file.py +631 -0
- package/python/lib/python3.13/site-packages/pip/_internal/req/req_install.py +828 -0
- package/python/lib/python3.13/site-packages/pip/_internal/req/req_set.py +81 -0
- package/python/lib/python3.13/site-packages/pip/_internal/req/req_uninstall.py +639 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/__init__.py +0 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/base.py +20 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/legacy/resolver.py +598 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/base.py +142 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/candidates.py +591 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/factory.py +856 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +166 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/provider.py +285 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/reporter.py +98 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/requirements.py +251 -0
- package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/resolver.py +332 -0
- package/python/lib/python3.13/site-packages/pip/_internal/self_outdated_check.py +255 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/__init__.py +0 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/_jaraco_text.py +109 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/_log.py +38 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/appdirs.py +52 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/compat.py +85 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/compatibility_tags.py +201 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/datetime.py +28 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/deprecation.py +126 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/direct_url_helpers.py +87 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/egg_link.py +81 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/entrypoints.py +88 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/filesystem.py +203 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/filetypes.py +24 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/glibc.py +102 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/hashes.py +150 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/logging.py +396 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/misc.py +771 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/packaging.py +44 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/pylock.py +116 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/retry.py +45 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/subprocess.py +248 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/temp_dir.py +294 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/unpacking.py +362 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/urls.py +55 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/virtualenv.py +105 -0
- package/python/lib/python3.13/site-packages/pip/_internal/utils/wheel.py +132 -0
- package/python/lib/python3.13/site-packages/pip/_internal/vcs/__init__.py +15 -0
- package/python/lib/python3.13/site-packages/pip/_internal/vcs/bazaar.py +130 -0
- package/python/lib/python3.13/site-packages/pip/_internal/vcs/git.py +571 -0
- package/python/lib/python3.13/site-packages/pip/_internal/vcs/mercurial.py +186 -0
- package/python/lib/python3.13/site-packages/pip/_internal/vcs/subversion.py +335 -0
- package/python/lib/python3.13/site-packages/pip/_internal/vcs/versioncontrol.py +695 -0
- package/python/lib/python3.13/site-packages/pip/_internal/wheel_builder.py +261 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/README.rst +180 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/__init__.py +117 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/LICENSE.txt +13 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/__init__.py +32 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/_cmd.py +70 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/adapter.py +167 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/cache.py +75 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +8 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +145 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +48 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/controller.py +511 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/filewrapper.py +121 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/heuristics.py +157 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/serialize.py +146 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/wrapper.py +43 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/certifi/LICENSE +20 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/certifi/__init__.py +4 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/certifi/__main__.py +12 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/certifi/cacert.pem +4468 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/certifi/core.py +83 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/certifi/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/LICENSE.txt +9 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/__init__.py +13 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/__main__.py +65 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/_implementation.py +209 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/_lint_dependency_groups.py +59 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/_pip_wrapper.py +62 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/_toml_compat.py +9 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/LICENSE.txt +284 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/__init__.py +33 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/compat.py +1137 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/resources.py +358 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/scripts.py +447 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/t32.exe +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/t64-arm.exe +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/t64.exe +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/util.py +1984 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/w32.exe +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/w64-arm.exe +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distlib/w64.exe +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distro/LICENSE +202 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distro/__init__.py +54 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distro/__main__.py +4 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distro/distro.py +1403 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/distro/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/idna/LICENSE.md +31 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/idna/__init__.py +45 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/idna/codec.py +122 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/idna/compat.py +15 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/idna/core.py +437 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/idna/idnadata.py +4309 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/idna/intranges.py +57 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/idna/package_data.py +1 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/idna/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/idna/uts46data.py +8841 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/msgpack/COPYING +14 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/msgpack/__init__.py +55 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/msgpack/ext.py +170 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/msgpack/fallback.py +929 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/LICENSE +3 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/LICENSE.APACHE +177 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/LICENSE.BSD +23 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/__init__.py +15 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_elffile.py +108 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_manylinux.py +262 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_musllinux.py +85 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_parser.py +365 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_structures.py +69 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_tokenizer.py +193 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/licenses/__init__.py +147 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/licenses/_spdx.py +799 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/markers.py +388 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/metadata.py +978 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/pylock.py +635 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/requirements.py +86 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/specifiers.py +1068 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/tags.py +651 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/utils.py +158 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/packaging/version.py +792 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pkg_resources/LICENSE +17 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pkg_resources/__init__.py +3676 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/LICENSE +21 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/__init__.py +631 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/__main__.py +55 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/android.py +249 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/api.py +299 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/macos.py +146 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/unix.py +272 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/version.py +34 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/windows.py +278 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/LICENSE +25 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/__init__.py +82 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/__main__.py +17 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/console.py +70 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/filter.py +70 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/filters/__init__.py +940 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/formatter.py +129 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/formatters/__init__.py +157 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/formatters/_mapping.py +23 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/lexer.py +963 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/lexers/__init__.py +362 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/lexers/_mapping.py +602 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/lexers/python.py +1201 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/modeline.py +43 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/plugin.py +72 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/regexopt.py +91 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/scanner.py +104 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/sphinxext.py +247 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/style.py +203 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/styles/__init__.py +61 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/styles/_mapping.py +54 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/token.py +214 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/unistring.py +153 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pygments/util.py +324 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/LICENSE +21 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/__init__.py +31 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_impl.py +410 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +21 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +389 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/LICENSE +175 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/__init__.py +179 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/__version__.py +14 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/_internal_utils.py +50 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/adapters.py +696 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/api.py +157 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/auth.py +314 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/certs.py +17 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/compat.py +90 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/cookies.py +561 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/exceptions.py +151 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/help.py +127 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/hooks.py +33 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/models.py +1039 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/packages.py +25 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/sessions.py +831 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/status_codes.py +128 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/structures.py +99 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/requests/utils.py +1086 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/LICENSE +13 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/__init__.py +27 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/providers.py +196 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/reporters.py +55 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/__init__.py +27 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/abstract.py +47 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/criterion.py +48 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/exceptions.py +57 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py +627 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/structs.py +209 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/LICENSE +19 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/__init__.py +177 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/__main__.py +245 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_cell_widths.py +454 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_emoji_codes.py +3610 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_emoji_replace.py +32 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_export_format.py +76 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_extension.py +10 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_fileno.py +24 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_inspect.py +268 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_log_render.py +94 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_loop.py +43 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_null_file.py +69 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_palettes.py +309 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_pick.py +17 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_ratio.py +153 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_spinners.py +482 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_stack.py +16 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_timer.py +19 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_win32_console.py +661 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_windows.py +71 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_windows_renderer.py +56 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/_wrap.py +93 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/abc.py +33 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/align.py +306 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/ansi.py +241 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/bar.py +93 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/box.py +474 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/cells.py +174 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/color.py +621 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/color_triplet.py +38 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/columns.py +187 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/console.py +2680 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/constrain.py +37 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/containers.py +167 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/control.py +219 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/default_styles.py +193 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/diagnose.py +39 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/emoji.py +91 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/errors.py +34 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/file_proxy.py +57 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/filesize.py +88 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/highlighter.py +232 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/json.py +139 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/jupyter.py +101 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/layout.py +442 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/live.py +400 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/live_render.py +106 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/logging.py +297 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/markup.py +251 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/measure.py +151 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/padding.py +141 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/pager.py +34 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/palette.py +100 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/panel.py +317 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/pretty.py +1016 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/progress.py +1715 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/progress_bar.py +223 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/prompt.py +400 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/protocol.py +42 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/region.py +10 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/repr.py +149 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/rule.py +130 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/scope.py +86 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/screen.py +54 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/segment.py +752 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/spinner.py +132 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/status.py +131 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/style.py +792 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/styled.py +42 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/syntax.py +985 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/table.py +1006 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/terminal_theme.py +153 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/text.py +1361 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/theme.py +115 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/themes.py +5 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/traceback.py +899 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/rich/tree.py +257 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/tomli/LICENSE +21 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/tomli/__init__.py +8 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/tomli/_parser.py +777 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/tomli/_re.py +115 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/tomli/_types.py +10 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/tomli/py.typed +1 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/tomli_w/LICENSE +21 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/tomli_w/__init__.py +4 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/tomli_w/_writer.py +229 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/tomli_w/py.typed +1 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/truststore/LICENSE +21 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/truststore/__init__.py +36 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/truststore/_api.py +341 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/truststore/_macos.py +571 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/truststore/_openssl.py +68 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/truststore/_ssl_constants.py +31 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/truststore/_windows.py +567 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/truststore/py.typed +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/LICENSE.txt +21 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/__init__.py +102 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/_collections.py +355 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/_version.py +2 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/connection.py +572 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/connectionpool.py +1140 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +36 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +519 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +397 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/appengine.py +314 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +130 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +518 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +920 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/socks.py +216 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/exceptions.py +323 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/fields.py +274 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/filepost.py +98 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +51 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py +155 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/packages/six.py +1076 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/poolmanager.py +540 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/request.py +191 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/response.py +879 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/__init__.py +49 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/connection.py +149 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/proxy.py +57 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/queue.py +22 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/request.py +137 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/response.py +107 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/retry.py +622 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/ssl_.py +504 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +159 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/ssltransport.py +221 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/timeout.py +271 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/url.py +435 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/wait.py +152 -0
- package/python/lib/python3.13/site-packages/pip/_vendor/vendor.txt +19 -0
- package/python/lib/python3.13/site-packages/pip/py.typed +4 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/INSTALLER +1 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/METADATA +111 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/RECORD +879 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/REQUESTED +0 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/WHEEL +4 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/direct_url.json +1 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/entry_points.txt +4 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/AUTHORS.txt +860 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/LICENSE.txt +20 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/cachecontrol/LICENSE.txt +13 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/certifi/LICENSE +20 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/dependency_groups/LICENSE.txt +9 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/distlib/LICENSE.txt +284 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/distro/LICENSE +202 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/idna/LICENSE.md +31 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/msgpack/COPYING +14 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/packaging/LICENSE +3 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/packaging/LICENSE.APACHE +177 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/packaging/LICENSE.BSD +23 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pkg_resources/LICENSE +17 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/platformdirs/LICENSE +21 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pygments/LICENSE +25 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pyproject_hooks/LICENSE +21 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/requests/LICENSE +175 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/resolvelib/LICENSE +13 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/rich/LICENSE +19 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/tomli/LICENSE +21 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/tomli_w/LICENSE +21 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/truststore/LICENSE +21 -0
- package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/urllib3/LICENSE.txt +21 -0
- package/python/lib/python3.13/site.py +773 -0
- package/python/lib/python3.13/smtplib.py +1123 -0
- package/python/lib/python3.13/socket.py +982 -0
- package/python/lib/python3.13/socketserver.py +863 -0
- package/python/lib/python3.13/sqlite3/__init__.py +70 -0
- package/python/lib/python3.13/sqlite3/__main__.py +139 -0
- package/python/lib/python3.13/sqlite3/dbapi2.py +108 -0
- package/python/lib/python3.13/sqlite3/dump.py +113 -0
- package/python/lib/python3.13/sre_compile.py +7 -0
- package/python/lib/python3.13/sre_constants.py +7 -0
- package/python/lib/python3.13/sre_parse.py +7 -0
- package/python/lib/python3.13/ssl.py +1529 -0
- package/python/lib/python3.13/stat.py +212 -0
- package/python/lib/python3.13/statistics.py +1817 -0
- package/python/lib/python3.13/string.py +309 -0
- package/python/lib/python3.13/stringprep.py +272 -0
- package/python/lib/python3.13/struct.py +15 -0
- package/python/lib/python3.13/subprocess.py +2258 -0
- package/python/lib/python3.13/symtable.py +414 -0
- package/python/lib/python3.13/sysconfig/__init__.py +726 -0
- package/python/lib/python3.13/sysconfig/__main__.py +248 -0
- package/python/lib/python3.13/tabnanny.py +340 -0
- package/python/lib/python3.13/tarfile.py +3070 -0
- package/python/lib/python3.13/tempfile.py +957 -0
- package/python/lib/python3.13/textwrap.py +497 -0
- package/python/lib/python3.13/this.py +28 -0
- package/python/lib/python3.13/threading.py +1602 -0
- package/python/lib/python3.13/timeit.py +381 -0
- package/python/lib/python3.13/tkinter/__init__.py +5002 -0
- package/python/lib/python3.13/tkinter/__main__.py +7 -0
- package/python/lib/python3.13/tkinter/colorchooser.py +86 -0
- package/python/lib/python3.13/tkinter/commondialog.py +53 -0
- package/python/lib/python3.13/tkinter/constants.py +110 -0
- package/python/lib/python3.13/tkinter/dialog.py +49 -0
- package/python/lib/python3.13/tkinter/dnd.py +324 -0
- package/python/lib/python3.13/tkinter/filedialog.py +492 -0
- package/python/lib/python3.13/tkinter/font.py +239 -0
- package/python/lib/python3.13/tkinter/messagebox.py +146 -0
- package/python/lib/python3.13/tkinter/scrolledtext.py +56 -0
- package/python/lib/python3.13/tkinter/simpledialog.py +441 -0
- package/python/lib/python3.13/tkinter/ttk.py +1647 -0
- package/python/lib/python3.13/token.py +141 -0
- package/python/lib/python3.13/tokenize.py +592 -0
- package/python/lib/python3.13/tomllib/__init__.py +10 -0
- package/python/lib/python3.13/tomllib/_parser.py +691 -0
- package/python/lib/python3.13/tomllib/_re.py +107 -0
- package/python/lib/python3.13/tomllib/_types.py +10 -0
- package/python/lib/python3.13/tomllib/mypy.ini +17 -0
- package/python/lib/python3.13/trace.py +754 -0
- package/python/lib/python3.13/traceback.py +1638 -0
- package/python/lib/python3.13/tracemalloc.py +560 -0
- package/python/lib/python3.13/tty.py +73 -0
- package/python/lib/python3.13/turtle.py +4199 -0
- package/python/lib/python3.13/turtledemo/__init__.py +14 -0
- package/python/lib/python3.13/turtledemo/__main__.py +401 -0
- package/python/lib/python3.13/turtledemo/bytedesign.py +161 -0
- package/python/lib/python3.13/turtledemo/chaos.py +59 -0
- package/python/lib/python3.13/turtledemo/clock.py +138 -0
- package/python/lib/python3.13/turtledemo/colormixer.py +58 -0
- package/python/lib/python3.13/turtledemo/forest.py +108 -0
- package/python/lib/python3.13/turtledemo/fractalcurves.py +138 -0
- package/python/lib/python3.13/turtledemo/lindenmayer.py +119 -0
- package/python/lib/python3.13/turtledemo/minimal_hanoi.py +79 -0
- package/python/lib/python3.13/turtledemo/nim.py +226 -0
- package/python/lib/python3.13/turtledemo/paint.py +54 -0
- package/python/lib/python3.13/turtledemo/peace.py +61 -0
- package/python/lib/python3.13/turtledemo/penrose.py +175 -0
- package/python/lib/python3.13/turtledemo/planet_and_moon.py +111 -0
- package/python/lib/python3.13/turtledemo/rosette.py +65 -0
- package/python/lib/python3.13/turtledemo/round_dance.py +86 -0
- package/python/lib/python3.13/turtledemo/sorting_animate.py +204 -0
- package/python/lib/python3.13/turtledemo/tree.py +62 -0
- package/python/lib/python3.13/turtledemo/turtle.cfg +10 -0
- package/python/lib/python3.13/turtledemo/two_canvases.py +54 -0
- package/python/lib/python3.13/turtledemo/yinyang.py +49 -0
- package/python/lib/python3.13/types.py +345 -0
- package/python/lib/python3.13/typing.py +3831 -0
- package/python/lib/python3.13/unittest/__init__.py +80 -0
- package/python/lib/python3.13/unittest/__main__.py +18 -0
- package/python/lib/python3.13/unittest/_log.py +86 -0
- package/python/lib/python3.13/unittest/async_case.py +146 -0
- package/python/lib/python3.13/unittest/case.py +1478 -0
- package/python/lib/python3.13/unittest/loader.py +453 -0
- package/python/lib/python3.13/unittest/main.py +280 -0
- package/python/lib/python3.13/unittest/mock.py +3179 -0
- package/python/lib/python3.13/unittest/result.py +256 -0
- package/python/lib/python3.13/unittest/runner.py +292 -0
- package/python/lib/python3.13/unittest/signals.py +71 -0
- package/python/lib/python3.13/unittest/suite.py +379 -0
- package/python/lib/python3.13/unittest/util.py +170 -0
- package/python/lib/python3.13/urllib/__init__.py +0 -0
- package/python/lib/python3.13/urllib/error.py +74 -0
- package/python/lib/python3.13/urllib/parse.py +1262 -0
- package/python/lib/python3.13/urllib/request.py +2797 -0
- package/python/lib/python3.13/urllib/response.py +84 -0
- package/python/lib/python3.13/urllib/robotparser.py +286 -0
- package/python/lib/python3.13/uuid.py +784 -0
- package/python/lib/python3.13/venv/__init__.py +687 -0
- package/python/lib/python3.13/venv/__main__.py +10 -0
- package/python/lib/python3.13/venv/scripts/common/Activate.ps1 +248 -0
- package/python/lib/python3.13/venv/scripts/common/activate +76 -0
- package/python/lib/python3.13/venv/scripts/common/activate.fish +69 -0
- package/python/lib/python3.13/venv/scripts/posix/activate.csh +27 -0
- package/python/lib/python3.13/warnings.py +735 -0
- package/python/lib/python3.13/wave.py +665 -0
- package/python/lib/python3.13/weakref.py +674 -0
- package/python/lib/python3.13/webbrowser.py +710 -0
- package/python/lib/python3.13/wsgiref/__init__.py +25 -0
- package/python/lib/python3.13/wsgiref/handlers.py +573 -0
- package/python/lib/python3.13/wsgiref/headers.py +187 -0
- package/python/lib/python3.13/wsgiref/simple_server.py +161 -0
- package/python/lib/python3.13/wsgiref/types.py +54 -0
- package/python/lib/python3.13/wsgiref/util.py +159 -0
- package/python/lib/python3.13/wsgiref/validate.py +438 -0
- package/python/lib/python3.13/xml/__init__.py +20 -0
- package/python/lib/python3.13/xml/dom/NodeFilter.py +27 -0
- package/python/lib/python3.13/xml/dom/__init__.py +140 -0
- package/python/lib/python3.13/xml/dom/domreg.py +99 -0
- package/python/lib/python3.13/xml/dom/expatbuilder.py +962 -0
- package/python/lib/python3.13/xml/dom/minicompat.py +109 -0
- package/python/lib/python3.13/xml/dom/minidom.py +2024 -0
- package/python/lib/python3.13/xml/dom/pulldom.py +336 -0
- package/python/lib/python3.13/xml/dom/xmlbuilder.py +389 -0
- package/python/lib/python3.13/xml/etree/ElementInclude.py +186 -0
- package/python/lib/python3.13/xml/etree/ElementPath.py +423 -0
- package/python/lib/python3.13/xml/etree/ElementTree.py +2098 -0
- package/python/lib/python3.13/xml/etree/__init__.py +33 -0
- package/python/lib/python3.13/xml/etree/cElementTree.py +3 -0
- package/python/lib/python3.13/xml/parsers/__init__.py +8 -0
- package/python/lib/python3.13/xml/parsers/expat.py +8 -0
- package/python/lib/python3.13/xml/sax/__init__.py +94 -0
- package/python/lib/python3.13/xml/sax/_exceptions.py +127 -0
- package/python/lib/python3.13/xml/sax/expatreader.py +454 -0
- package/python/lib/python3.13/xml/sax/handler.py +387 -0
- package/python/lib/python3.13/xml/sax/saxutils.py +369 -0
- package/python/lib/python3.13/xml/sax/xmlreader.py +378 -0
- package/python/lib/python3.13/xmlrpc/__init__.py +1 -0
- package/python/lib/python3.13/xmlrpc/client.py +1503 -0
- package/python/lib/python3.13/xmlrpc/server.py +1002 -0
- package/python/lib/python3.13/zipapp.py +229 -0
- package/python/lib/python3.13/zipfile/__init__.py +2375 -0
- package/python/lib/python3.13/zipfile/__main__.py +4 -0
- package/python/lib/python3.13/zipfile/_path/__init__.py +452 -0
- package/python/lib/python3.13/zipfile/_path/glob.py +113 -0
- package/python/lib/python3.13/zipimport.py +803 -0
- package/python/lib/python3.13/zoneinfo/__init__.py +34 -0
- package/python/lib/python3.13/zoneinfo/_common.py +168 -0
- package/python/lib/python3.13/zoneinfo/_tzpath.py +189 -0
- package/python/lib/python3.13/zoneinfo/_zoneinfo.py +772 -0
- package/python/lib/tcl9/9.0/http-2.10.1.tm +5475 -0
- package/python/lib/tcl9/9.0/msgcat-1.7.1.tm +1349 -0
- package/python/lib/tcl9/9.0/platform/shell-1.1.4.tm +241 -0
- package/python/lib/tcl9/9.0/platform-1.1.0.tm +443 -0
- package/python/lib/tcl9/9.0/tcltest-2.5.10.tm +3588 -0
- package/python/lib/tcl9.0/auto.tcl +711 -0
- package/python/lib/tcl9.0/clock.tcl +2110 -0
- package/python/lib/tcl9.0/cookiejar0.2/cookiejar.tcl +746 -0
- package/python/lib/tcl9.0/cookiejar0.2/idna.tcl +292 -0
- package/python/lib/tcl9.0/cookiejar0.2/pkgIndex.tcl +3 -0
- package/python/lib/tcl9.0/cookiejar0.2/public_suffix_list.dat.gz +0 -0
- package/python/lib/tcl9.0/encoding/ascii.enc +20 -0
- package/python/lib/tcl9.0/encoding/big5.enc +1516 -0
- package/python/lib/tcl9.0/encoding/cns11643.enc +1584 -0
- package/python/lib/tcl9.0/encoding/cp1250.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp1251.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp1252.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp1253.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp1254.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp1255.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp1256.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp1257.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp1258.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp165.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp437.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp737.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp775.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp850.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp852.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp855.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp857.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp860.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp861.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp862.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp863.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp864.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp865.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp866.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp869.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp874.enc +20 -0
- package/python/lib/tcl9.0/encoding/cp932.enc +801 -0
- package/python/lib/tcl9.0/encoding/cp936.enc +2162 -0
- package/python/lib/tcl9.0/encoding/cp949.enc +2128 -0
- package/python/lib/tcl9.0/encoding/cp950.enc +1499 -0
- package/python/lib/tcl9.0/encoding/dingbats.enc +20 -0
- package/python/lib/tcl9.0/encoding/ebcdic.enc +20 -0
- package/python/lib/tcl9.0/encoding/euc-cn.enc +1397 -0
- package/python/lib/tcl9.0/encoding/euc-jp.enc +1353 -0
- package/python/lib/tcl9.0/encoding/euc-kr.enc +1533 -0
- package/python/lib/tcl9.0/encoding/gb12345.enc +1414 -0
- package/python/lib/tcl9.0/encoding/gb1988.enc +20 -0
- package/python/lib/tcl9.0/encoding/gb2312-raw.enc +1380 -0
- package/python/lib/tcl9.0/encoding/gb2312.enc +1397 -0
- package/python/lib/tcl9.0/encoding/iso2022-jp.enc +12 -0
- package/python/lib/tcl9.0/encoding/iso2022-kr.enc +7 -0
- package/python/lib/tcl9.0/encoding/iso2022.enc +14 -0
- package/python/lib/tcl9.0/encoding/iso8859-1.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-10.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-11.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-13.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-14.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-15.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-16.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-2.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-3.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-4.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-5.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-6.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-7.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-8.enc +20 -0
- package/python/lib/tcl9.0/encoding/iso8859-9.enc +20 -0
- package/python/lib/tcl9.0/encoding/jis0201.enc +20 -0
- package/python/lib/tcl9.0/encoding/jis0208.enc +1319 -0
- package/python/lib/tcl9.0/encoding/jis0212.enc +1159 -0
- package/python/lib/tcl9.0/encoding/koi8-r.enc +20 -0
- package/python/lib/tcl9.0/encoding/koi8-ru.enc +20 -0
- package/python/lib/tcl9.0/encoding/koi8-t.enc +20 -0
- package/python/lib/tcl9.0/encoding/koi8-u.enc +20 -0
- package/python/lib/tcl9.0/encoding/ksc5601.enc +1516 -0
- package/python/lib/tcl9.0/encoding/macCentEuro.enc +20 -0
- package/python/lib/tcl9.0/encoding/macCroatian.enc +20 -0
- package/python/lib/tcl9.0/encoding/macCyrillic.enc +20 -0
- package/python/lib/tcl9.0/encoding/macDingbats.enc +20 -0
- package/python/lib/tcl9.0/encoding/macGreek.enc +20 -0
- package/python/lib/tcl9.0/encoding/macIceland.enc +20 -0
- package/python/lib/tcl9.0/encoding/macJapan.enc +785 -0
- package/python/lib/tcl9.0/encoding/macRoman.enc +20 -0
- package/python/lib/tcl9.0/encoding/macRomania.enc +20 -0
- package/python/lib/tcl9.0/encoding/macThai.enc +20 -0
- package/python/lib/tcl9.0/encoding/macTurkish.enc +20 -0
- package/python/lib/tcl9.0/encoding/macUkraine.enc +20 -0
- package/python/lib/tcl9.0/encoding/shiftjis.enc +690 -0
- package/python/lib/tcl9.0/encoding/symbol.enc +20 -0
- package/python/lib/tcl9.0/encoding/tis-620.enc +20 -0
- package/python/lib/tcl9.0/foreachline.tcl +25 -0
- package/python/lib/tcl9.0/history.tcl +335 -0
- package/python/lib/tcl9.0/icu.tcl +145 -0
- package/python/lib/tcl9.0/init.tcl +773 -0
- package/python/lib/tcl9.0/install.tcl +275 -0
- package/python/lib/tcl9.0/msgs/af.msg +49 -0
- package/python/lib/tcl9.0/msgs/af_za.msg +6 -0
- package/python/lib/tcl9.0/msgs/ar.msg +54 -0
- package/python/lib/tcl9.0/msgs/ar_in.msg +6 -0
- package/python/lib/tcl9.0/msgs/ar_jo.msg +39 -0
- package/python/lib/tcl9.0/msgs/ar_lb.msg +39 -0
- package/python/lib/tcl9.0/msgs/ar_sy.msg +39 -0
- package/python/lib/tcl9.0/msgs/be.msg +52 -0
- package/python/lib/tcl9.0/msgs/bg.msg +52 -0
- package/python/lib/tcl9.0/msgs/bn.msg +49 -0
- package/python/lib/tcl9.0/msgs/bn_in.msg +6 -0
- package/python/lib/tcl9.0/msgs/ca.msg +50 -0
- package/python/lib/tcl9.0/msgs/cs.msg +54 -0
- package/python/lib/tcl9.0/msgs/da.msg +52 -0
- package/python/lib/tcl9.0/msgs/de.msg +54 -0
- package/python/lib/tcl9.0/msgs/de_at.msg +35 -0
- package/python/lib/tcl9.0/msgs/de_be.msg +53 -0
- package/python/lib/tcl9.0/msgs/el.msg +52 -0
- package/python/lib/tcl9.0/msgs/en_au.msg +7 -0
- package/python/lib/tcl9.0/msgs/en_be.msg +7 -0
- package/python/lib/tcl9.0/msgs/en_bw.msg +6 -0
- package/python/lib/tcl9.0/msgs/en_ca.msg +7 -0
- package/python/lib/tcl9.0/msgs/en_gb.msg +7 -0
- package/python/lib/tcl9.0/msgs/en_hk.msg +8 -0
- package/python/lib/tcl9.0/msgs/en_ie.msg +7 -0
- package/python/lib/tcl9.0/msgs/en_in.msg +8 -0
- package/python/lib/tcl9.0/msgs/en_nz.msg +7 -0
- package/python/lib/tcl9.0/msgs/en_ph.msg +8 -0
- package/python/lib/tcl9.0/msgs/en_sg.msg +6 -0
- package/python/lib/tcl9.0/msgs/en_za.msg +6 -0
- package/python/lib/tcl9.0/msgs/en_zw.msg +6 -0
- package/python/lib/tcl9.0/msgs/eo.msg +54 -0
- package/python/lib/tcl9.0/msgs/es.msg +52 -0
- package/python/lib/tcl9.0/msgs/es_ar.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_bo.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_cl.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_co.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_cr.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_do.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_ec.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_gt.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_hn.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_mx.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_ni.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_pa.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_pe.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_pr.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_py.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_sv.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_uy.msg +6 -0
- package/python/lib/tcl9.0/msgs/es_ve.msg +6 -0
- package/python/lib/tcl9.0/msgs/et.msg +52 -0
- package/python/lib/tcl9.0/msgs/eu.msg +47 -0
- package/python/lib/tcl9.0/msgs/eu_es.msg +7 -0
- package/python/lib/tcl9.0/msgs/fa.msg +47 -0
- package/python/lib/tcl9.0/msgs/fa_in.msg +52 -0
- package/python/lib/tcl9.0/msgs/fa_ir.msg +9 -0
- package/python/lib/tcl9.0/msgs/fi.msg +50 -0
- package/python/lib/tcl9.0/msgs/fo.msg +47 -0
- package/python/lib/tcl9.0/msgs/fo_fo.msg +7 -0
- package/python/lib/tcl9.0/msgs/fr.msg +52 -0
- package/python/lib/tcl9.0/msgs/fr_be.msg +7 -0
- package/python/lib/tcl9.0/msgs/fr_ca.msg +7 -0
- package/python/lib/tcl9.0/msgs/fr_ch.msg +7 -0
- package/python/lib/tcl9.0/msgs/ga.msg +47 -0
- package/python/lib/tcl9.0/msgs/ga_ie.msg +7 -0
- package/python/lib/tcl9.0/msgs/gl.msg +47 -0
- package/python/lib/tcl9.0/msgs/gl_es.msg +6 -0
- package/python/lib/tcl9.0/msgs/gv.msg +47 -0
- package/python/lib/tcl9.0/msgs/gv_gb.msg +6 -0
- package/python/lib/tcl9.0/msgs/he.msg +52 -0
- package/python/lib/tcl9.0/msgs/hi.msg +39 -0
- package/python/lib/tcl9.0/msgs/hi_in.msg +6 -0
- package/python/lib/tcl9.0/msgs/hr.msg +50 -0
- package/python/lib/tcl9.0/msgs/hu.msg +54 -0
- package/python/lib/tcl9.0/msgs/id.msg +47 -0
- package/python/lib/tcl9.0/msgs/id_id.msg +6 -0
- package/python/lib/tcl9.0/msgs/is.msg +50 -0
- package/python/lib/tcl9.0/msgs/it.msg +54 -0
- package/python/lib/tcl9.0/msgs/it_ch.msg +6 -0
- package/python/lib/tcl9.0/msgs/ja.msg +44 -0
- package/python/lib/tcl9.0/msgs/kl.msg +47 -0
- package/python/lib/tcl9.0/msgs/kl_gl.msg +7 -0
- package/python/lib/tcl9.0/msgs/ko.msg +55 -0
- package/python/lib/tcl9.0/msgs/ko_kr.msg +8 -0
- package/python/lib/tcl9.0/msgs/kok.msg +39 -0
- package/python/lib/tcl9.0/msgs/kok_in.msg +6 -0
- package/python/lib/tcl9.0/msgs/kw.msg +47 -0
- package/python/lib/tcl9.0/msgs/kw_gb.msg +6 -0
- package/python/lib/tcl9.0/msgs/lt.msg +52 -0
- package/python/lib/tcl9.0/msgs/lv.msg +52 -0
- package/python/lib/tcl9.0/msgs/mk.msg +52 -0
- package/python/lib/tcl9.0/msgs/mr.msg +39 -0
- package/python/lib/tcl9.0/msgs/mr_in.msg +6 -0
- package/python/lib/tcl9.0/msgs/ms.msg +47 -0
- package/python/lib/tcl9.0/msgs/ms_my.msg +6 -0
- package/python/lib/tcl9.0/msgs/mt.msg +27 -0
- package/python/lib/tcl9.0/msgs/nb.msg +52 -0
- package/python/lib/tcl9.0/msgs/nl.msg +50 -0
- package/python/lib/tcl9.0/msgs/nl_be.msg +7 -0
- package/python/lib/tcl9.0/msgs/nn.msg +52 -0
- package/python/lib/tcl9.0/msgs/pl.msg +52 -0
- package/python/lib/tcl9.0/msgs/pt.msg +50 -0
- package/python/lib/tcl9.0/msgs/pt_br.msg +7 -0
- package/python/lib/tcl9.0/msgs/ro.msg +52 -0
- package/python/lib/tcl9.0/msgs/ru.msg +52 -0
- package/python/lib/tcl9.0/msgs/ru_ua.msg +6 -0
- package/python/lib/tcl9.0/msgs/sh.msg +52 -0
- package/python/lib/tcl9.0/msgs/sk.msg +52 -0
- package/python/lib/tcl9.0/msgs/sl.msg +52 -0
- package/python/lib/tcl9.0/msgs/sq.msg +54 -0
- package/python/lib/tcl9.0/msgs/sr.msg +52 -0
- package/python/lib/tcl9.0/msgs/sv.msg +52 -0
- package/python/lib/tcl9.0/msgs/sw.msg +49 -0
- package/python/lib/tcl9.0/msgs/ta.msg +39 -0
- package/python/lib/tcl9.0/msgs/ta_in.msg +6 -0
- package/python/lib/tcl9.0/msgs/te.msg +47 -0
- package/python/lib/tcl9.0/msgs/te_in.msg +8 -0
- package/python/lib/tcl9.0/msgs/th.msg +54 -0
- package/python/lib/tcl9.0/msgs/tr.msg +50 -0
- package/python/lib/tcl9.0/msgs/uk.msg +52 -0
- package/python/lib/tcl9.0/msgs/vi.msg +50 -0
- package/python/lib/tcl9.0/msgs/zh.msg +55 -0
- package/python/lib/tcl9.0/msgs/zh_cn.msg +7 -0
- package/python/lib/tcl9.0/msgs/zh_hk.msg +28 -0
- package/python/lib/tcl9.0/msgs/zh_sg.msg +8 -0
- package/python/lib/tcl9.0/msgs/zh_tw.msg +8 -0
- package/python/lib/tcl9.0/opt0.4/optparse.tcl +1069 -0
- package/python/lib/tcl9.0/opt0.4/pkgIndex.tcl +12 -0
- package/python/lib/tcl9.0/package.tcl +767 -0
- package/python/lib/tcl9.0/parray.tcl +28 -0
- package/python/lib/tcl9.0/readfile.tcl +23 -0
- package/python/lib/tcl9.0/safe.tcl +1461 -0
- package/python/lib/tcl9.0/tclAppInit.c +183 -0
- package/python/lib/tcl9.0/tclIndex +112 -0
- package/python/lib/tcl9.0/tm.tcl +378 -0
- package/python/lib/tcl9.0/word.tcl +155 -0
- package/python/lib/tcl9.0/writefile.tcl +37 -0
- package/python/lib/thread3.0.4/libtcl9thread3.0.4.dylib +0 -0
- package/python/lib/thread3.0.4/libthread3.0.4.dylib +0 -0
- package/python/lib/thread3.0.4/pkgIndex.tcl +52 -0
- package/python/lib/thread3.0.4/ttrace.tcl +943 -0
- package/python/lib/tk9.0/bgerror.tcl +282 -0
- package/python/lib/tk9.0/button.tcl +782 -0
- package/python/lib/tk9.0/choosedir.tcl +310 -0
- package/python/lib/tk9.0/clrpick.tcl +696 -0
- package/python/lib/tk9.0/comdlg.tcl +322 -0
- package/python/lib/tk9.0/console.tcl +1148 -0
- package/python/lib/tk9.0/demos/README +44 -0
- package/python/lib/tk9.0/demos/anilabel.tcl +168 -0
- package/python/lib/tk9.0/demos/aniwave.tcl +107 -0
- package/python/lib/tk9.0/demos/arrow.tcl +260 -0
- package/python/lib/tk9.0/demos/bind.tcl +78 -0
- package/python/lib/tk9.0/demos/bitmap.tcl +52 -0
- package/python/lib/tk9.0/demos/browse +66 -0
- package/python/lib/tk9.0/demos/button.tcl +47 -0
- package/python/lib/tk9.0/demos/check.tcl +71 -0
- package/python/lib/tk9.0/demos/clrpick.tcl +54 -0
- package/python/lib/tk9.0/demos/colors.tcl +99 -0
- package/python/lib/tk9.0/demos/combo.tcl +62 -0
- package/python/lib/tk9.0/demos/cscroll.tcl +134 -0
- package/python/lib/tk9.0/demos/ctext.tcl +172 -0
- package/python/lib/tk9.0/demos/dialog1.tcl +25 -0
- package/python/lib/tk9.0/demos/dialog2.tcl +18 -0
- package/python/lib/tk9.0/demos/en.msg +103 -0
- package/python/lib/tk9.0/demos/entry1.tcl +34 -0
- package/python/lib/tk9.0/demos/entry2.tcl +47 -0
- package/python/lib/tk9.0/demos/entry3.tcl +185 -0
- package/python/lib/tk9.0/demos/filebox.tcl +82 -0
- package/python/lib/tk9.0/demos/floor.tcl +1379 -0
- package/python/lib/tk9.0/demos/fontchoose.tcl +67 -0
- package/python/lib/tk9.0/demos/form.tcl +38 -0
- package/python/lib/tk9.0/demos/goldberg.tcl +1970 -0
- package/python/lib/tk9.0/demos/hello +22 -0
- package/python/lib/tk9.0/demos/hscale.tcl +49 -0
- package/python/lib/tk9.0/demos/icon.tcl +51 -0
- package/python/lib/tk9.0/demos/image1.tcl +44 -0
- package/python/lib/tk9.0/demos/image2.tcl +114 -0
- package/python/lib/tk9.0/demos/images/Tcl.svg +75 -0
- package/python/lib/tk9.0/demos/images/Tk_feather.png +0 -0
- package/python/lib/tk9.0/demos/images/earth.gif +0 -0
- package/python/lib/tk9.0/demos/images/earthmenu.png +0 -0
- package/python/lib/tk9.0/demos/images/earthris.gif +0 -0
- package/python/lib/tk9.0/demos/images/flagdown.xbm +27 -0
- package/python/lib/tk9.0/demos/images/flagup.xbm +27 -0
- package/python/lib/tk9.0/demos/images/gray25.xbm +6 -0
- package/python/lib/tk9.0/demos/images/letters.xbm +27 -0
- package/python/lib/tk9.0/demos/images/noletter.xbm +27 -0
- package/python/lib/tk9.0/demos/images/ouster.png +0 -0
- package/python/lib/tk9.0/demos/images/pattern.xbm +6 -0
- package/python/lib/tk9.0/demos/images/plowed_field.png +0 -0
- package/python/lib/tk9.0/demos/images/starry_night.png +0 -0
- package/python/lib/tk9.0/demos/images/tcllogo.gif +0 -0
- package/python/lib/tk9.0/demos/images/teapot.ppm +31 -0
- package/python/lib/tk9.0/demos/items.tcl +307 -0
- package/python/lib/tk9.0/demos/ixset +328 -0
- package/python/lib/tk9.0/demos/knightstour.tcl +274 -0
- package/python/lib/tk9.0/demos/label.tcl +47 -0
- package/python/lib/tk9.0/demos/labelframe.tcl +76 -0
- package/python/lib/tk9.0/demos/license.terms +40 -0
- package/python/lib/tk9.0/demos/mac_styles.tcl +266 -0
- package/python/lib/tk9.0/demos/mac_tabs.tcl +76 -0
- package/python/lib/tk9.0/demos/mac_wm.tcl +227 -0
- package/python/lib/tk9.0/demos/mclist.tcl +170 -0
- package/python/lib/tk9.0/demos/menu.tcl +184 -0
- package/python/lib/tk9.0/demos/menubu.tcl +90 -0
- package/python/lib/tk9.0/demos/msgbox.tcl +62 -0
- package/python/lib/tk9.0/demos/nl.msg +132 -0
- package/python/lib/tk9.0/demos/paned1.tcl +32 -0
- package/python/lib/tk9.0/demos/paned2.tcl +74 -0
- package/python/lib/tk9.0/demos/pendulum.tcl +206 -0
- package/python/lib/tk9.0/demos/plot.tcl +97 -0
- package/python/lib/tk9.0/demos/print.tcl +91 -0
- package/python/lib/tk9.0/demos/puzzle.tcl +82 -0
- package/python/lib/tk9.0/demos/radio.tcl +66 -0
- package/python/lib/tk9.0/demos/rmt +210 -0
- package/python/lib/tk9.0/demos/rolodex +204 -0
- package/python/lib/tk9.0/demos/ruler.tcl +175 -0
- package/python/lib/tk9.0/demos/sayings.tcl +44 -0
- package/python/lib/tk9.0/demos/search.tcl +139 -0
- package/python/lib/tk9.0/demos/spin.tcl +45 -0
- package/python/lib/tk9.0/demos/states.tcl +54 -0
- package/python/lib/tk9.0/demos/style.tcl +155 -0
- package/python/lib/tk9.0/demos/systray.tcl +89 -0
- package/python/lib/tk9.0/demos/tclIndex +70 -0
- package/python/lib/tk9.0/demos/tcolor +358 -0
- package/python/lib/tk9.0/demos/text.tcl +113 -0
- package/python/lib/tk9.0/demos/textpeer.tcl +62 -0
- package/python/lib/tk9.0/demos/timer +47 -0
- package/python/lib/tk9.0/demos/toolbar.tcl +92 -0
- package/python/lib/tk9.0/demos/tree.tcl +89 -0
- package/python/lib/tk9.0/demos/ttkbut.tcl +84 -0
- package/python/lib/tk9.0/demos/ttkmenu.tcl +53 -0
- package/python/lib/tk9.0/demos/ttknote.tcl +57 -0
- package/python/lib/tk9.0/demos/ttkpane.tcl +112 -0
- package/python/lib/tk9.0/demos/ttkprogress.tcl +46 -0
- package/python/lib/tk9.0/demos/ttkscale.tcl +39 -0
- package/python/lib/tk9.0/demos/ttkspin.tcl +49 -0
- package/python/lib/tk9.0/demos/twind.tcl +358 -0
- package/python/lib/tk9.0/demos/unicodeout.tcl +126 -0
- package/python/lib/tk9.0/demos/vscale.tcl +50 -0
- package/python/lib/tk9.0/demos/widget +713 -0
- package/python/lib/tk9.0/demos/windowicons.tcl +108 -0
- package/python/lib/tk9.0/dialog.tcl +175 -0
- package/python/lib/tk9.0/entry.tcl +720 -0
- package/python/lib/tk9.0/focus.tcl +178 -0
- package/python/lib/tk9.0/fontchooser.tcl +512 -0
- package/python/lib/tk9.0/iconbadges.tcl +253 -0
- package/python/lib/tk9.0/iconlist.tcl +705 -0
- package/python/lib/tk9.0/icons.tcl +54 -0
- package/python/lib/tk9.0/images/README +7 -0
- package/python/lib/tk9.0/images/logo.eps +2091 -0
- package/python/lib/tk9.0/images/logo100.gif +0 -0
- package/python/lib/tk9.0/images/logo64.gif +0 -0
- package/python/lib/tk9.0/images/logoLarge.gif +0 -0
- package/python/lib/tk9.0/images/logoMed.gif +0 -0
- package/python/lib/tk9.0/images/pwrdLogo.eps +1897 -0
- package/python/lib/tk9.0/images/pwrdLogo100.gif +0 -0
- package/python/lib/tk9.0/images/pwrdLogo150.gif +0 -0
- package/python/lib/tk9.0/images/pwrdLogo175.gif +0 -0
- package/python/lib/tk9.0/images/pwrdLogo200.gif +0 -0
- package/python/lib/tk9.0/images/pwrdLogo75.gif +0 -0
- package/python/lib/tk9.0/images/tai-ku.gif +0 -0
- package/python/lib/tk9.0/listbox.tcl +522 -0
- package/python/lib/tk9.0/megawidget.tcl +297 -0
- package/python/lib/tk9.0/menu.tcl +1376 -0
- package/python/lib/tk9.0/mkpsenc.tcl +1488 -0
- package/python/lib/tk9.0/msgbox.tcl +454 -0
- package/python/lib/tk9.0/msgs/cs.msg +95 -0
- package/python/lib/tk9.0/msgs/da.msg +96 -0
- package/python/lib/tk9.0/msgs/de.msg +109 -0
- package/python/lib/tk9.0/msgs/el.msg +104 -0
- package/python/lib/tk9.0/msgs/en.msg +110 -0
- package/python/lib/tk9.0/msgs/en_gb.msg +3 -0
- package/python/lib/tk9.0/msgs/eo.msg +93 -0
- package/python/lib/tk9.0/msgs/es.msg +94 -0
- package/python/lib/tk9.0/msgs/fi.msg +114 -0
- package/python/lib/tk9.0/msgs/fr.msg +90 -0
- package/python/lib/tk9.0/msgs/hu.msg +96 -0
- package/python/lib/tk9.0/msgs/it.msg +91 -0
- package/python/lib/tk9.0/msgs/nl.msg +109 -0
- package/python/lib/tk9.0/msgs/pl.msg +109 -0
- package/python/lib/tk9.0/msgs/pt.msg +92 -0
- package/python/lib/tk9.0/msgs/ru.msg +112 -0
- package/python/lib/tk9.0/msgs/sv.msg +94 -0
- package/python/lib/tk9.0/msgs/zh_cn.msg +111 -0
- package/python/lib/tk9.0/optMenu.tcl +43 -0
- package/python/lib/tk9.0/palette.tcl +283 -0
- package/python/lib/tk9.0/panedwindow.tcl +194 -0
- package/python/lib/tk9.0/pkgIndex.tcl +3 -0
- package/python/lib/tk9.0/print.tcl +1460 -0
- package/python/lib/tk9.0/safetk.tcl +262 -0
- package/python/lib/tk9.0/scale.tcl +299 -0
- package/python/lib/tk9.0/scaling.tcl +232 -0
- package/python/lib/tk9.0/scrlbar.tcl +500 -0
- package/python/lib/tk9.0/spinbox.tcl +580 -0
- package/python/lib/tk9.0/systray.tcl +483 -0
- package/python/lib/tk9.0/tclIndex +252 -0
- package/python/lib/tk9.0/tearoff.tcl +155 -0
- package/python/lib/tk9.0/text.tcl +1295 -0
- package/python/lib/tk9.0/tk.tcl +853 -0
- package/python/lib/tk9.0/tkAppInit.c +200 -0
- package/python/lib/tk9.0/tkfbox.tcl +1251 -0
- package/python/lib/tk9.0/ttk/altTheme.tcl +153 -0
- package/python/lib/tk9.0/ttk/aquaTheme.tcl +178 -0
- package/python/lib/tk9.0/ttk/button.tcl +83 -0
- package/python/lib/tk9.0/ttk/clamTheme.tcl +196 -0
- package/python/lib/tk9.0/ttk/classicTheme.tcl +145 -0
- package/python/lib/tk9.0/ttk/combobox.tcl +555 -0
- package/python/lib/tk9.0/ttk/cursors.tcl +205 -0
- package/python/lib/tk9.0/ttk/defaults.tcl +231 -0
- package/python/lib/tk9.0/ttk/entry.tcl +678 -0
- package/python/lib/tk9.0/ttk/fonts.tcl +152 -0
- package/python/lib/tk9.0/ttk/menubutton.tcl +237 -0
- package/python/lib/tk9.0/ttk/notebook.tcl +255 -0
- package/python/lib/tk9.0/ttk/panedwindow.tcl +89 -0
- package/python/lib/tk9.0/ttk/progress.tcl +55 -0
- package/python/lib/tk9.0/ttk/scale.tcl +94 -0
- package/python/lib/tk9.0/ttk/scrollbar.tcl +119 -0
- package/python/lib/tk9.0/ttk/sizegrip.tcl +102 -0
- package/python/lib/tk9.0/ttk/spinbox.tcl +204 -0
- package/python/lib/tk9.0/ttk/treeview.tcl +464 -0
- package/python/lib/tk9.0/ttk/ttk.tcl +223 -0
- package/python/lib/tk9.0/ttk/utils.tcl +317 -0
- package/python/lib/tk9.0/ttk/vistaTheme.tcl +259 -0
- package/python/lib/tk9.0/ttk/winTheme.tcl +119 -0
- package/python/lib/tk9.0/ttk/xpTheme.tcl +95 -0
- package/python/lib/tk9.0/xmfbox.tcl +982 -0
- package/python/share/man/man1/python3.13.1 +740 -0
- package/runtime-manifest.json +7 -0
|
@@ -0,0 +1,1460 @@
|
|
|
1
|
+
# print.tcl --
|
|
2
|
+
|
|
3
|
+
# This file defines the 'tk print' command for printing of the canvas
|
|
4
|
+
# widget and text on X11, Windows, and macOS. It implements an abstraction
|
|
5
|
+
# layer that presents a consistent API across the three platforms.
|
|
6
|
+
|
|
7
|
+
# Copyright © 2009 Michael I. Schwartz.
|
|
8
|
+
# Copyright © 2021 Kevin Walzer/WordTech Communications LLC.
|
|
9
|
+
# Copyright © 2021 Harald Oehlmann, Elmicron GmbH
|
|
10
|
+
# Copyright © 2022 Emiliano Gavilan
|
|
11
|
+
#
|
|
12
|
+
# See the file "license.terms" for information on usage and redistribution
|
|
13
|
+
# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
|
14
|
+
|
|
15
|
+
namespace eval ::tk::print {
|
|
16
|
+
namespace import -force ::tk::msgcat::*
|
|
17
|
+
|
|
18
|
+
# margins for printing text, in mm
|
|
19
|
+
variable margin
|
|
20
|
+
set margin(top) 15
|
|
21
|
+
set margin(left) 25
|
|
22
|
+
set margin(right) 15
|
|
23
|
+
set margin(bottom) 15
|
|
24
|
+
|
|
25
|
+
# makeTempFile:
|
|
26
|
+
# Create a temporary file and populate its contents
|
|
27
|
+
# Arguments:
|
|
28
|
+
# filename - base of the name of the file to create
|
|
29
|
+
# contents - what to put in the file; defaults to empty
|
|
30
|
+
# Returns:
|
|
31
|
+
# Full filename for created file
|
|
32
|
+
#
|
|
33
|
+
proc makeTempFile {filename {contents ""}} {
|
|
34
|
+
set dumpfile [file join /tmp rawprint.txt]
|
|
35
|
+
set tmpfile [file join /tmp $filename]
|
|
36
|
+
set f [open $dumpfile w]
|
|
37
|
+
try {
|
|
38
|
+
puts -nonewline $f $contents
|
|
39
|
+
} finally {
|
|
40
|
+
close $f
|
|
41
|
+
if {[file extension $filename] == ".ps"} {
|
|
42
|
+
#don't apply formatting to PostScript
|
|
43
|
+
file rename -force $dumpfile $tmpfile
|
|
44
|
+
} else {
|
|
45
|
+
#Make text fixed width for improved printed output
|
|
46
|
+
exec fmt -w 75 $dumpfile > $tmpfile
|
|
47
|
+
}
|
|
48
|
+
return $tmpfile
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
# _wrapLines -
|
|
53
|
+
# wrap long lines into lines of at most length wl at word boundaries
|
|
54
|
+
# Arguments:
|
|
55
|
+
# str - string to be wrapped
|
|
56
|
+
# wl - wrap length
|
|
57
|
+
#
|
|
58
|
+
proc _wrapLines {str wl} {
|
|
59
|
+
# This is a really simple algorithm: it breaks a line on space or tab
|
|
60
|
+
# character, collapsing them only at the breaking point.
|
|
61
|
+
# Leading space is left as-is.
|
|
62
|
+
# For a full fledged line breaking algorithm see
|
|
63
|
+
# Unicode® Standard Annex #14 "Unicode Line Breaking Algorithm"
|
|
64
|
+
set res {}
|
|
65
|
+
incr wl -1
|
|
66
|
+
set re [format {((?:^|[^[:blank:]]).{0,%d})(?:[[:blank:]]|$)} $wl]
|
|
67
|
+
foreach line [split $str \n] {
|
|
68
|
+
lappend res {*}[lmap {_ l} [regexp -all -inline -- $re $line] {
|
|
69
|
+
set l
|
|
70
|
+
}]
|
|
71
|
+
}
|
|
72
|
+
# the return value is a list of lines
|
|
73
|
+
return $res
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
if {[tk windowingsystem] eq "win32"} {
|
|
77
|
+
variable printer_name
|
|
78
|
+
variable copies
|
|
79
|
+
variable dpi_x
|
|
80
|
+
variable dpi_y
|
|
81
|
+
variable paper_width
|
|
82
|
+
variable paper_height
|
|
83
|
+
variable margin_left
|
|
84
|
+
variable margin_top
|
|
85
|
+
variable printargs
|
|
86
|
+
array set printargs {}
|
|
87
|
+
|
|
88
|
+
# Multiple utility procedures for printing text based on the
|
|
89
|
+
# C printer primitives.
|
|
90
|
+
|
|
91
|
+
# _set_dc:
|
|
92
|
+
# Select printer and set device context and other parameters
|
|
93
|
+
# for print job.
|
|
94
|
+
#
|
|
95
|
+
proc _set_dc {} {
|
|
96
|
+
variable margin
|
|
97
|
+
variable printargs
|
|
98
|
+
variable printer_name
|
|
99
|
+
variable paper_width
|
|
100
|
+
variable paper_height
|
|
101
|
+
variable dpi_x
|
|
102
|
+
variable dpi_y
|
|
103
|
+
variable copies
|
|
104
|
+
|
|
105
|
+
#First, we select the printer.
|
|
106
|
+
_selectprinter
|
|
107
|
+
|
|
108
|
+
#Next, set values. Some are taken from the printer,
|
|
109
|
+
#some are sane defaults.
|
|
110
|
+
|
|
111
|
+
if {[info exists printer_name]} {
|
|
112
|
+
set printargs(hDC) $printer_name
|
|
113
|
+
set printargs(pw) $paper_width
|
|
114
|
+
set printargs(ph) $paper_height
|
|
115
|
+
set printargs(resx) $dpi_x
|
|
116
|
+
set printargs(resy) $dpi_y
|
|
117
|
+
set printargs(copies) $copies
|
|
118
|
+
set printargs(resolution) [list $dpi_x $dpi_y]
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
# _print
|
|
123
|
+
# Main entry of the print subsystem for Win32.
|
|
124
|
+
# Set the print job name and delegate to the right procedure
|
|
125
|
+
proc _print {w} {
|
|
126
|
+
variable jobname
|
|
127
|
+
|
|
128
|
+
set class [winfo class $w]
|
|
129
|
+
if {$class ni {Text Canvas}} {
|
|
130
|
+
return -code error "can not print widget of class \"$class\":\
|
|
131
|
+
should be Canvas or Text"
|
|
132
|
+
}
|
|
133
|
+
set jobname "[tk appname]: Tk widget $w"
|
|
134
|
+
switch -- $class {
|
|
135
|
+
Text {
|
|
136
|
+
_print_data2 [$w get 1.0 end] {{Courier New} 11}
|
|
137
|
+
}
|
|
138
|
+
Canvas {
|
|
139
|
+
_print_widget $w
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
# _print_data2
|
|
145
|
+
# This function prints multiple-page files, using a line-oriented
|
|
146
|
+
# function, taking advantage of knowing the character widths.
|
|
147
|
+
# Arguments:
|
|
148
|
+
# data - Text data for printing
|
|
149
|
+
# font - Font for printing
|
|
150
|
+
proc _print_data2 { data font } {
|
|
151
|
+
variable printargs
|
|
152
|
+
variable printer_name
|
|
153
|
+
variable jobname
|
|
154
|
+
|
|
155
|
+
_set_dc
|
|
156
|
+
|
|
157
|
+
if {![info exists printer_name]} {
|
|
158
|
+
return
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
set maxwidth [expr {
|
|
162
|
+
($printargs(pw) - $printargs(lm) - $printargs(rm)) *
|
|
163
|
+
$printargs(resx) / 1000
|
|
164
|
+
}]
|
|
165
|
+
set maxheight [expr {
|
|
166
|
+
($printargs(ph) - $printargs(tm) - $printargs(bm)) *
|
|
167
|
+
$printargs(resy) / 1000
|
|
168
|
+
}]
|
|
169
|
+
set lm [expr {$printargs(lm) * $printargs(resx) / 1000}]
|
|
170
|
+
set tm [expr {$printargs(tm) * $printargs(resy) / 1000}]
|
|
171
|
+
set curheight $tm
|
|
172
|
+
|
|
173
|
+
lassign [_opendoc $jobname $font] charwidth charheight
|
|
174
|
+
_openpage
|
|
175
|
+
|
|
176
|
+
set wl [expr {($maxwidth / $charwidth) + 1}]
|
|
177
|
+
foreach line [_wrapLines $data $wl] {
|
|
178
|
+
_gdi textplain $printargs(hDC) $lm $curheight $line
|
|
179
|
+
incr curheight $charheight
|
|
180
|
+
if {$curheight + $charheight > $maxheight} {
|
|
181
|
+
_closepage
|
|
182
|
+
_openpage
|
|
183
|
+
set curheight $tm
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
_closepage
|
|
187
|
+
_closedoc
|
|
188
|
+
return
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
# _print_data
|
|
192
|
+
# This function prints multiple-page files, using a line-oriented
|
|
193
|
+
# function, taking advantage of knowing the character widths.
|
|
194
|
+
# Arguments:
|
|
195
|
+
# data - Text data for printing
|
|
196
|
+
# font - Font for printing
|
|
197
|
+
proc _print_data { data font } {
|
|
198
|
+
variable printargs
|
|
199
|
+
variable printer_name
|
|
200
|
+
variable charwidths
|
|
201
|
+
|
|
202
|
+
_set_dc
|
|
203
|
+
|
|
204
|
+
if {![info exists printer_name]} {
|
|
205
|
+
return
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
_gdi characters $printargs(hDC) -font $font \
|
|
209
|
+
-array ::tk::print::charwidths
|
|
210
|
+
array default set ::tk::print::charwidths $charwidths(x)
|
|
211
|
+
# check for a monospaced font
|
|
212
|
+
set mono 0
|
|
213
|
+
if {$charwidths(i) == $charwidths(m)} {
|
|
214
|
+
set mono $charwidths(m)
|
|
215
|
+
}
|
|
216
|
+
set maxwidth [expr {
|
|
217
|
+
($printargs(pw) - $printargs(lm) - $printargs(rm)) *
|
|
218
|
+
$printargs(resx) / 1000
|
|
219
|
+
}]
|
|
220
|
+
set maxhgt [expr {
|
|
221
|
+
($printargs(ph) - $printargs(tm) - $printargs(bm)) *
|
|
222
|
+
$printargs(resy) / 1000
|
|
223
|
+
}]
|
|
224
|
+
set lm [expr {$printargs(lm) * $printargs(resx) / 1000}]
|
|
225
|
+
set tm [expr {$printargs(tm) * $printargs(resy) / 1000}]
|
|
226
|
+
set curhgt $tm
|
|
227
|
+
|
|
228
|
+
_opendoc "[tk appname]: Tk Print Job"
|
|
229
|
+
_openpage
|
|
230
|
+
|
|
231
|
+
# if a monospaced font is used, things are a bit easier
|
|
232
|
+
# handle this case here
|
|
233
|
+
if {$mono > 0} {
|
|
234
|
+
# can use the same line breaking algorithm as X11
|
|
235
|
+
set wl [expr {($maxwidth / $mono) + 1}]
|
|
236
|
+
foreach line [_wrapLines $data $wl] {
|
|
237
|
+
set hgt [_gdi text $printargs(hDC) $lm $curhgt \
|
|
238
|
+
-anchor nw -justify left \
|
|
239
|
+
-text $line -font $font]
|
|
240
|
+
incr curhgt $hgt
|
|
241
|
+
# puts "height: $hgt"
|
|
242
|
+
if {$curhgt + $hgt > $maxhgt} {
|
|
243
|
+
_closepage
|
|
244
|
+
_openpage
|
|
245
|
+
set curhgt $tm
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
_closepage
|
|
249
|
+
_closedoc
|
|
250
|
+
return
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
# proportional font
|
|
254
|
+
set totallen [string length $data]
|
|
255
|
+
set curlen 0
|
|
256
|
+
set breaklines 1
|
|
257
|
+
while {$curlen < $totallen} {
|
|
258
|
+
set linestring [string range $data $curlen end]
|
|
259
|
+
if {$breaklines} {
|
|
260
|
+
set endind [string first "\n" $linestring]
|
|
261
|
+
if {$endind >= 0} {
|
|
262
|
+
set linestring [string range $linestring 0 $endind]
|
|
263
|
+
# handle blank lines....
|
|
264
|
+
if {$linestring eq ""} {
|
|
265
|
+
set linestring " "
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
lassign [_print_page_nextline $linestring $curhgt $font \
|
|
270
|
+
$lm $maxwidth] len hgt
|
|
271
|
+
incr curlen $len
|
|
272
|
+
incr curhgt $hgt
|
|
273
|
+
if {$curhgt + $hgt > $maxhgt} {
|
|
274
|
+
_closepage
|
|
275
|
+
_openpage
|
|
276
|
+
set curhgt $zerohgt
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
_closepage
|
|
280
|
+
_closedoc
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
# _print_page_nextline
|
|
284
|
+
# Returns the pair "chars y"
|
|
285
|
+
# where chars is the number of characters printed on the line
|
|
286
|
+
# and y is the height of the line printed
|
|
287
|
+
# Arguments:
|
|
288
|
+
# string - Data to print
|
|
289
|
+
# y - Y value to begin printing at, in logical units
|
|
290
|
+
# font - if non-empty specifies a font to draw the line in
|
|
291
|
+
# lm - left margin, in logical units
|
|
292
|
+
# maxwidth - line length limit in logical units
|
|
293
|
+
proc _print_page_nextline {string y font lm maxwidth} {
|
|
294
|
+
variable charwidths
|
|
295
|
+
variable printargs
|
|
296
|
+
|
|
297
|
+
set endindex 0
|
|
298
|
+
set totwidth 0
|
|
299
|
+
set maxstring [string length $string]
|
|
300
|
+
|
|
301
|
+
for {set i 0} {($i < $maxstring) && ($totwidth < $maxwidth)} {incr i} {
|
|
302
|
+
incr totwidth $charwidths([string index $string $i])
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
set endindex $i
|
|
306
|
+
set startindex $endindex
|
|
307
|
+
|
|
308
|
+
if {$i < $maxstring} {
|
|
309
|
+
# In this case, the whole data string is not used up, and we
|
|
310
|
+
# wish to break on a word. Since we have all the partial
|
|
311
|
+
# widths calculated, this should be easy.
|
|
312
|
+
|
|
313
|
+
set endindex [expr {[string wordstart $string $endindex] - 1}]
|
|
314
|
+
set startindex [expr {$endindex + 1}]
|
|
315
|
+
|
|
316
|
+
# If the line is just too long (no word breaks), print as much
|
|
317
|
+
# as you can....
|
|
318
|
+
if {$endindex <= 1} {
|
|
319
|
+
set endindex $i
|
|
320
|
+
set startindex $i
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
set txt [string trimright [string range $string 0 $endindex] "\r\n"]
|
|
325
|
+
if {$font ne ""} {
|
|
326
|
+
set height [_gdi text $printargs(hDC) $lm $y \
|
|
327
|
+
-anchor nw -justify left \
|
|
328
|
+
-text $txt -font $font]
|
|
329
|
+
} else {
|
|
330
|
+
set height [_gdi text $printargs(hDC) $lm $y \
|
|
331
|
+
-anchor nw -justify left -text $txt]
|
|
332
|
+
}
|
|
333
|
+
return [list $startindex $height]
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
# These procedures read in the canvas widget, and write all of
|
|
337
|
+
# its contents out to the Windows printer.
|
|
338
|
+
|
|
339
|
+
proc _init_print {} {
|
|
340
|
+
variable margin
|
|
341
|
+
variable printargs
|
|
342
|
+
variable vtgPrint
|
|
343
|
+
|
|
344
|
+
set vtgPrint(printer.bg) white
|
|
345
|
+
|
|
346
|
+
# convert margins to windows DC units (1000 point per inch)
|
|
347
|
+
set printargs(tm) [expr {int($margin(top) / 25.4 * 1000)}]
|
|
348
|
+
set printargs(lm) [expr {int($margin(left) / 25.4 * 1000)}]
|
|
349
|
+
set printargs(rm) [expr {int($margin(right) / 25.4 * 1000)}]
|
|
350
|
+
set printargs(bm) [expr {int($margin(bottom) / 25.4 * 1000)}]
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
# _print_widget
|
|
354
|
+
# Main procedure for printing a widget. Currently supports
|
|
355
|
+
# canvas widgets. Handles opening and closing of printer.
|
|
356
|
+
# Arguments:
|
|
357
|
+
# wid - The widget to be printed.
|
|
358
|
+
# name - App name to pass to printer.
|
|
359
|
+
|
|
360
|
+
proc _print_widget {w} {
|
|
361
|
+
variable printargs
|
|
362
|
+
variable printer_name
|
|
363
|
+
variable jobname
|
|
364
|
+
|
|
365
|
+
# provide an early exit if the widget is not a canvas
|
|
366
|
+
set class [winfo class $w]
|
|
367
|
+
if {$class ne "Canvas"} {
|
|
368
|
+
return -code error "Can't print items of type $class.\
|
|
369
|
+
No handler registered"
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
_set_dc
|
|
373
|
+
|
|
374
|
+
if {![info exists printer_name]} {
|
|
375
|
+
return
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
_opendoc $jobname
|
|
379
|
+
_openpage
|
|
380
|
+
|
|
381
|
+
# Here is where any scaling/gdi mapping should take place
|
|
382
|
+
# For now, scale so the dimensions of the window are sized to the
|
|
383
|
+
# width of the page. Scale evenly.
|
|
384
|
+
|
|
385
|
+
# For normal windows, this may be fine--but for a canvas, one
|
|
386
|
+
# wants the canvas dimensions, and not the WINDOW dimensions.
|
|
387
|
+
if {$class eq "Canvas"} {
|
|
388
|
+
set sc [$w cget -scrollregion]
|
|
389
|
+
# if there is no scrollregion, use width and height.
|
|
390
|
+
if {$sc eq ""} {
|
|
391
|
+
set window_x [winfo pixels $w [$w cget -width]]
|
|
392
|
+
set window_y [winfo pixels $w [$w cget -height]]
|
|
393
|
+
} else {
|
|
394
|
+
set window_x [winfo pixels $w [lindex $sc 2]]
|
|
395
|
+
set window_y [winfo pixels $w [lindex $sc 3]]
|
|
396
|
+
}
|
|
397
|
+
} else {
|
|
398
|
+
set window_x [winfo width $w]
|
|
399
|
+
set window_y [winfo height $w]
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
set printer_x [expr {
|
|
403
|
+
( $printargs(pw) - $printargs(lm) - $printargs(rm) ) *
|
|
404
|
+
$printargs(resx) / 1000.0
|
|
405
|
+
}]
|
|
406
|
+
set printer_y [expr {
|
|
407
|
+
( $printargs(ph) - $printargs(tm) - $printargs(bm) ) *
|
|
408
|
+
$printargs(resy) / 1000.0
|
|
409
|
+
}]
|
|
410
|
+
set factor_x [expr {$window_x / $printer_x}]
|
|
411
|
+
set factor_y [expr {$window_y / $printer_y}]
|
|
412
|
+
|
|
413
|
+
if {$factor_x < $factor_y} {
|
|
414
|
+
set lo $window_y
|
|
415
|
+
set ph $printer_y
|
|
416
|
+
} else {
|
|
417
|
+
set lo $window_x
|
|
418
|
+
set ph $printer_x
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
_gdi map $printargs(hDC) -logical $lo -physical $ph \
|
|
422
|
+
-offset $printargs(resolution)
|
|
423
|
+
|
|
424
|
+
# Handling of canvas widgets.
|
|
425
|
+
_print_canvas $printargs(hDC) $w
|
|
426
|
+
|
|
427
|
+
# End printing process.
|
|
428
|
+
_closepage
|
|
429
|
+
_closedoc
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
# _print_canvas
|
|
433
|
+
# Main procedure for writing canvas widget items to printer.
|
|
434
|
+
# Arguments:
|
|
435
|
+
# hdc - The printer handle.
|
|
436
|
+
# cw - The canvas widget.
|
|
437
|
+
proc _print_canvas {hdc cw} {
|
|
438
|
+
variable vtgPrint
|
|
439
|
+
variable printargs
|
|
440
|
+
|
|
441
|
+
# Get information about page being printed to
|
|
442
|
+
# print_canvas.CalcSizing $cw
|
|
443
|
+
set vtgPrint(canvas.bg) [string tolower [$cw cget -background]]
|
|
444
|
+
|
|
445
|
+
# Re-write each widget from cw to printer
|
|
446
|
+
foreach id [$cw find all] {
|
|
447
|
+
if {[$cw itemcget $id -state] eq "hidden"} {
|
|
448
|
+
# don't display hidden items
|
|
449
|
+
continue
|
|
450
|
+
}
|
|
451
|
+
set type [$cw type $id]
|
|
452
|
+
if {[info commands _print_canvas.$type] eq "_print_canvas.$type"} {
|
|
453
|
+
_print_canvas.$type $printargs(hDC) $cw $id
|
|
454
|
+
} else {
|
|
455
|
+
# should we use puts?
|
|
456
|
+
# puts "Omitting canvas item of type $type since there is no handler registered for it"
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
# These procedures support the various canvas item types, reading the
|
|
462
|
+
# information about the item on the real canvas and then writing a
|
|
463
|
+
# similar item to the printer.
|
|
464
|
+
|
|
465
|
+
# _print_canvas.line
|
|
466
|
+
# Description:
|
|
467
|
+
# Prints a line item.
|
|
468
|
+
# Arguments:
|
|
469
|
+
# hdc - The printer handle.
|
|
470
|
+
# cw - The canvas widget.
|
|
471
|
+
# id - The id of the canvas item.
|
|
472
|
+
proc _print_canvas.line {hdc cw id} {
|
|
473
|
+
variable vtgPrint
|
|
474
|
+
variable printargs
|
|
475
|
+
|
|
476
|
+
set color [_print_canvas.TransColor [$cw itemcget $id -fill]]
|
|
477
|
+
if {[string match $vtgPrint(printer.bg) $color]} {
|
|
478
|
+
return
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
set coords [$cw coords $id]
|
|
482
|
+
set wdth [$cw itemcget $id -width]
|
|
483
|
+
set arrow [$cw itemcget $id -arrow]
|
|
484
|
+
set arwshp [$cw itemcget $id -arrowshape]
|
|
485
|
+
set dash [$cw itemcget $id -dash]
|
|
486
|
+
set smooth [$cw itemcget $id -smooth]
|
|
487
|
+
set splinesteps [$cw itemcget $id -splinesteps]
|
|
488
|
+
set capstyle [$cw itemcget $id -capstyle]
|
|
489
|
+
set joinstyle [$cw itemcget $id -joinstyle]
|
|
490
|
+
|
|
491
|
+
set cmdargs {}
|
|
492
|
+
|
|
493
|
+
if {$wdth > 1} {
|
|
494
|
+
lappend cmdargs -width $wdth
|
|
495
|
+
}
|
|
496
|
+
if {$dash ne ""} {
|
|
497
|
+
lappend cmdargs -dash $dash
|
|
498
|
+
}
|
|
499
|
+
if {$smooth ne ""} {
|
|
500
|
+
lappend cmdargs -smooth $smooth
|
|
501
|
+
}
|
|
502
|
+
if {$splinesteps ne ""} {
|
|
503
|
+
lappend cmdargs -splinesteps $splinesteps
|
|
504
|
+
}
|
|
505
|
+
|
|
506
|
+
set result [_gdi line $hdc {*}$coords \
|
|
507
|
+
-fill $color -arrow $arrow -arrowshape $arwshp \
|
|
508
|
+
-capstyle $capstyle -joinstyle $joinstyle \
|
|
509
|
+
{*}$cmdargs]
|
|
510
|
+
if {$result ne ""} {
|
|
511
|
+
puts $result
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
# _print_canvas.arc
|
|
516
|
+
# Prints a arc item.
|
|
517
|
+
# Args:
|
|
518
|
+
# hdc - The printer handle.
|
|
519
|
+
# cw - The canvas widget.
|
|
520
|
+
# id - The id of the canvas item.
|
|
521
|
+
proc _print_canvas.arc {hdc cw id} {
|
|
522
|
+
variable vtgPrint
|
|
523
|
+
variable printargs
|
|
524
|
+
|
|
525
|
+
set color [_print_canvas.TransColor [$cw itemcget $id -outline]]
|
|
526
|
+
if {[string match $vtgPrint(printer.bg) $color]} {
|
|
527
|
+
return
|
|
528
|
+
}
|
|
529
|
+
set coords [$cw coords $id]
|
|
530
|
+
set wdth [$cw itemcget $id -width]
|
|
531
|
+
set style [$cw itemcget $id -style]
|
|
532
|
+
set start [$cw itemcget $id -start]
|
|
533
|
+
set extent [$cw itemcget $id -extent]
|
|
534
|
+
set fill [$cw itemcget $id -fill]
|
|
535
|
+
|
|
536
|
+
set cmdargs {}
|
|
537
|
+
if {$wdth > 1} {
|
|
538
|
+
lappend cmdargs -width $wdth
|
|
539
|
+
}
|
|
540
|
+
if {$fill ne ""} {
|
|
541
|
+
lappend cmdargs -fill $fill
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
_gdi arc $hdc {*}$coords \
|
|
545
|
+
-outline $color -style $style -start $start -extent $extent \
|
|
546
|
+
{*}$cmdargs
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
# _print_canvas.polygon
|
|
550
|
+
# Prints a polygon item.
|
|
551
|
+
# Arguments:
|
|
552
|
+
# hdc - The printer handle.
|
|
553
|
+
# cw - The canvas widget.
|
|
554
|
+
# id - The id of the canvas item.
|
|
555
|
+
proc _print_canvas.polygon {hdc cw id} {
|
|
556
|
+
variable vtgPrint
|
|
557
|
+
variable printargs
|
|
558
|
+
|
|
559
|
+
set fcolor [_print_canvas.TransColor [$cw itemcget $id -fill]]
|
|
560
|
+
if {$fcolor eq ""} {
|
|
561
|
+
set fcolor $vtgPrint(printer.bg)
|
|
562
|
+
}
|
|
563
|
+
set ocolor [_print_canvas.TransColor [$cw itemcget $id -outline]]
|
|
564
|
+
if {$ocolor eq ""} {
|
|
565
|
+
set ocolor $vtgPrint(printer.bg)
|
|
566
|
+
}
|
|
567
|
+
set coords [$cw coords $id]
|
|
568
|
+
set wdth [$cw itemcget $id -width]
|
|
569
|
+
set smooth [$cw itemcget $id -smooth]
|
|
570
|
+
set splinesteps [$cw itemcget $id -splinesteps]
|
|
571
|
+
|
|
572
|
+
set cmdargs {}
|
|
573
|
+
if {$smooth ne ""} {
|
|
574
|
+
lappend cmdargs -smooth $smooth
|
|
575
|
+
}
|
|
576
|
+
if {$splinesteps ne ""} {
|
|
577
|
+
lappend cmdargs -splinesteps $splinesteps
|
|
578
|
+
}
|
|
579
|
+
|
|
580
|
+
_gdi polygon $hdc {*}$coords \
|
|
581
|
+
-width $wdth -fill $fcolor -outline $ocolor {*}$cmdargs
|
|
582
|
+
}
|
|
583
|
+
|
|
584
|
+
# _print_canvas.oval
|
|
585
|
+
# Prints an oval item.
|
|
586
|
+
# Arguments:
|
|
587
|
+
# hdc - The printer handle.
|
|
588
|
+
# cw - The canvas widget.
|
|
589
|
+
# id - The id of the canvas item.
|
|
590
|
+
proc _print_canvas.oval {hdc cw id} {
|
|
591
|
+
variable vtgPrint
|
|
592
|
+
|
|
593
|
+
set fcolor [_print_canvas.TransColor [$cw itemcget $id -fill]]
|
|
594
|
+
if {$fcolor eq ""} {
|
|
595
|
+
set fcolor $vtgPrint(printer.bg)
|
|
596
|
+
}
|
|
597
|
+
set ocolor [_print_canvas.TransColor [$cw itemcget $id -outline]]
|
|
598
|
+
if {$ocolor eq ""} {
|
|
599
|
+
set ocolor $vtgPrint(printer.bg)
|
|
600
|
+
}
|
|
601
|
+
set coords [$cw coords $id]
|
|
602
|
+
set wdth [$cw itemcget $id -width]
|
|
603
|
+
|
|
604
|
+
_gdi oval $hdc {*}$coords \
|
|
605
|
+
-width $wdth -fill $fcolor -outline $ocolor
|
|
606
|
+
}
|
|
607
|
+
|
|
608
|
+
# _print_canvas.rectangle
|
|
609
|
+
# Prints a rectangle item.
|
|
610
|
+
# Arguments:
|
|
611
|
+
# hdc - The printer handle.
|
|
612
|
+
# cw - The canvas widget.
|
|
613
|
+
# id - The id of the canvas item.
|
|
614
|
+
proc _print_canvas.rectangle {hdc cw id} {
|
|
615
|
+
variable vtgPrint
|
|
616
|
+
|
|
617
|
+
set fcolor [_print_canvas.TransColor [$cw itemcget $id -fill]]
|
|
618
|
+
if {$fcolor eq ""} {
|
|
619
|
+
set fcolor $vtgPrint(printer.bg)
|
|
620
|
+
}
|
|
621
|
+
set ocolor [_print_canvas.TransColor [$cw itemcget $id -outline]]
|
|
622
|
+
if {$ocolor eq ""} {
|
|
623
|
+
set ocolor $vtgPrint(printer.bg)
|
|
624
|
+
}
|
|
625
|
+
set coords [$cw coords $id]
|
|
626
|
+
set wdth [$cw itemcget $id -width]
|
|
627
|
+
|
|
628
|
+
_gdi rectangle $hdc {*}$coords \
|
|
629
|
+
-width $wdth -fill $fcolor -outline $ocolor
|
|
630
|
+
}
|
|
631
|
+
|
|
632
|
+
# _print_canvas.text
|
|
633
|
+
# Prints a text item.
|
|
634
|
+
# Arguments:
|
|
635
|
+
# hdc - The printer handle.
|
|
636
|
+
# cw - The canvas widget.
|
|
637
|
+
# id - The id of the canvas item.
|
|
638
|
+
proc _print_canvas.text {hdc cw id} {
|
|
639
|
+
variable vtgPrint
|
|
640
|
+
variable printargs
|
|
641
|
+
|
|
642
|
+
set color [_print_canvas.TransColor [$cw itemcget $id -fill]]
|
|
643
|
+
# if {"white" eq [string tolower $color]} {
|
|
644
|
+
# return
|
|
645
|
+
# }
|
|
646
|
+
# set color black
|
|
647
|
+
set txt [$cw itemcget $id -text]
|
|
648
|
+
if {$txt eq ""} {
|
|
649
|
+
return
|
|
650
|
+
}
|
|
651
|
+
set coords [$cw coords $id]
|
|
652
|
+
set anchr [$cw itemcget $id -anchor]
|
|
653
|
+
|
|
654
|
+
set angle [$cw itemcget $id -angle]
|
|
655
|
+
set wdth [winfo pixels $cw [$cw itemcget $id -width]]
|
|
656
|
+
set just [$cw itemcget $id -justify]
|
|
657
|
+
|
|
658
|
+
# Get the real canvas font info suitable for printer
|
|
659
|
+
set font [_make_gdi_cfont $cw [$cw itemcget $id -font]]
|
|
660
|
+
|
|
661
|
+
_gdi text $hdc {*}$coords \
|
|
662
|
+
-fill $color -text $txt -font $font \
|
|
663
|
+
-anchor $anchr -width $wdth -justify $just -angle $angle
|
|
664
|
+
}
|
|
665
|
+
|
|
666
|
+
proc _make_gdi_cfont {w fname} {
|
|
667
|
+
set fa [font actual $fname]
|
|
668
|
+
# Transform to the third documented format in font(n)
|
|
669
|
+
# {family size style style style style}
|
|
670
|
+
set font [lmap k { -family -size -weight -slant } {
|
|
671
|
+
dict get $fa $k
|
|
672
|
+
}]
|
|
673
|
+
# add underline and overstrike
|
|
674
|
+
foreach k { -underline -overstrike } v { underline overstrike } {
|
|
675
|
+
if {[dict get $fa $k]} {
|
|
676
|
+
lappend font $v
|
|
677
|
+
}
|
|
678
|
+
}
|
|
679
|
+
# make sure size is in pixels (negative)
|
|
680
|
+
if {[set size [lindex $font 1]] > 0} {
|
|
681
|
+
lset font 1 [winfo pixels $w -${size}p]
|
|
682
|
+
}
|
|
683
|
+
return $font
|
|
684
|
+
}
|
|
685
|
+
|
|
686
|
+
# _print_canvas.image
|
|
687
|
+
# Prints an image item.
|
|
688
|
+
# Arguments:
|
|
689
|
+
# hdc - The printer handle.
|
|
690
|
+
# cw - The canvas widget.
|
|
691
|
+
# id - The id of the canvas item.
|
|
692
|
+
proc _print_canvas.image {hdc cw id} {
|
|
693
|
+
# First, we have to get the image name.
|
|
694
|
+
set imagename [$cw itemcget $id -image]
|
|
695
|
+
if {[image type $imagename] ne "photo"} {
|
|
696
|
+
return
|
|
697
|
+
}
|
|
698
|
+
|
|
699
|
+
# Next, we get the location and anchor
|
|
700
|
+
lassign [$cw coords $id] ix iy
|
|
701
|
+
set anchor [$cw itemcget $id -anchor]
|
|
702
|
+
|
|
703
|
+
_gdi photo $hdc $ix $iy -anchor $anchor -photo $imagename
|
|
704
|
+
}
|
|
705
|
+
|
|
706
|
+
# _print_canvas.bitmap
|
|
707
|
+
# Prints a bitmap item.
|
|
708
|
+
# Arguments:
|
|
709
|
+
# hdc - The printer handle.
|
|
710
|
+
# cw - The canvas widget.
|
|
711
|
+
# id - The id of the canvas item.
|
|
712
|
+
proc _print_canvas.bitmap {hdc cw id} {
|
|
713
|
+
# bitmap is not yet supported !!
|
|
714
|
+
# do nothing until it is (if ever).
|
|
715
|
+
return
|
|
716
|
+
variable option
|
|
717
|
+
variable vtgPrint
|
|
718
|
+
|
|
719
|
+
# First, we have to get the bitmap name.
|
|
720
|
+
set name [$cw itemcget $id -bitmap]
|
|
721
|
+
|
|
722
|
+
# Now we get the size.
|
|
723
|
+
# set wid [image width $imagename]
|
|
724
|
+
# set hgt [image height $imagename]
|
|
725
|
+
set bbox [$cw bbox $id]
|
|
726
|
+
set wid [expr {[lindex $bbox 2] - [lindex $bbox 0]}]
|
|
727
|
+
set hgt [expr {[lindex $bbox 3] - [lindex $bbox 1]}]
|
|
728
|
+
|
|
729
|
+
#Next, we get the location and anchor.
|
|
730
|
+
set anchor [$cw itemcget $id -anchor]
|
|
731
|
+
set coords [$cw coords $id]
|
|
732
|
+
|
|
733
|
+
# Since the GDI commands don't yet support images and bitmaps,
|
|
734
|
+
# and since this represents a rendered bitmap, we CAN use
|
|
735
|
+
# copybits IF we create a new temporary toplevel to hold the beast.
|
|
736
|
+
# If this is too ugly, change the option!
|
|
737
|
+
|
|
738
|
+
if {[info exist option(use_copybits)]} {
|
|
739
|
+
set firstcase $option(use_copybits)
|
|
740
|
+
} else {
|
|
741
|
+
set firstcase 0
|
|
742
|
+
}
|
|
743
|
+
if {$firstcase > 0} {
|
|
744
|
+
set tl [toplevel .tmptop[expr {int( rand() * 65535 )}] \
|
|
745
|
+
-height $hgt -width $wid \
|
|
746
|
+
-background $vtgPrint(canvas.bg)]
|
|
747
|
+
canvas $tl.canvas -width $wid -height $hgt
|
|
748
|
+
$tl.canvas create bitmap 0 0 -bitmap $name -anchor nw
|
|
749
|
+
pack $tl.canvas -side left -expand false -fill none
|
|
750
|
+
tkwait visibility $tl.canvas
|
|
751
|
+
update
|
|
752
|
+
set srccoords [list 0 0 [expr {$wid - 1}] [expr {$hgt - 1}]]
|
|
753
|
+
set dstcoords [list [lindex $coords 0] [lindex $coords 1] [expr {$wid - 1}] [expr {$hgt - 1}]]
|
|
754
|
+
_gdi copybits $hdc -window $tl -client \
|
|
755
|
+
-source $srccoords -destination $dstcoords
|
|
756
|
+
destroy $tl
|
|
757
|
+
} else {
|
|
758
|
+
_gdi bitmap $hdc {*}$coords \
|
|
759
|
+
-anchor $anchor -bitmap $name
|
|
760
|
+
}
|
|
761
|
+
}
|
|
762
|
+
|
|
763
|
+
# These procedures transform attribute setting from the real
|
|
764
|
+
# canvas to the appropriate setting for printing to paper.
|
|
765
|
+
|
|
766
|
+
# _print_canvas.TransColor
|
|
767
|
+
# Does the actual transformation of colors from the
|
|
768
|
+
# canvas widget to paper.
|
|
769
|
+
# Arguments:
|
|
770
|
+
# color - The color value to be transformed.
|
|
771
|
+
proc _print_canvas.TransColor {color} {
|
|
772
|
+
variable vtgPrint
|
|
773
|
+
variable printargs
|
|
774
|
+
|
|
775
|
+
switch [string toupper $color] {
|
|
776
|
+
$vtgPrint(canvas.bg) {return $vtgPrint(printer.bg)}
|
|
777
|
+
}
|
|
778
|
+
return $color
|
|
779
|
+
}
|
|
780
|
+
|
|
781
|
+
# Initialize all the variables once.
|
|
782
|
+
_init_print
|
|
783
|
+
}
|
|
784
|
+
#end win32 procedures
|
|
785
|
+
}
|
|
786
|
+
|
|
787
|
+
# Begin X11 procedures. They depends on Cups being installed.
|
|
788
|
+
# X11 procedures abstracts print management with a "cups" ensemble command
|
|
789
|
+
|
|
790
|
+
# cups defaultprinter returns the default printer
|
|
791
|
+
# cups getprinters returns a dictionary of printers along
|
|
792
|
+
# with printer info
|
|
793
|
+
# cups print $printer $data ?$options?
|
|
794
|
+
# print the data (binary) on a given printer
|
|
795
|
+
# with the provided (supported) options:
|
|
796
|
+
# -colormode -copies -format -margins
|
|
797
|
+
# -media -nup -orientation
|
|
798
|
+
# -prettyprint -title -tzoom
|
|
799
|
+
|
|
800
|
+
# Some output configuration that on other platforms is managed through
|
|
801
|
+
# the printer driver/dialog is configured through the canvas postscript command.
|
|
802
|
+
if {[tk windowingsystem] eq "x11"} {
|
|
803
|
+
if {[info commands ::tk::print::cups] eq ""} {
|
|
804
|
+
namespace eval ::tk::print::cups {
|
|
805
|
+
# Pure Tcl cups ensemble command implementation
|
|
806
|
+
variable pcache
|
|
807
|
+
}
|
|
808
|
+
|
|
809
|
+
proc ::tk::print::cups::defaultprinter {} {
|
|
810
|
+
set default {}
|
|
811
|
+
regexp {: ([^[:space:]]+)$} [exec lpstat -d] _ default
|
|
812
|
+
return $default
|
|
813
|
+
}
|
|
814
|
+
|
|
815
|
+
proc ::tk::print::cups::getprinters {} {
|
|
816
|
+
variable pcache
|
|
817
|
+
# Test for existence of lpstat command to obtain the list of
|
|
818
|
+
# printers.
|
|
819
|
+
# Return an error if not found.
|
|
820
|
+
set res {}
|
|
821
|
+
try {
|
|
822
|
+
set printers [lsort -unique [split [exec lpstat -e] \n]]
|
|
823
|
+
foreach printer $printers {
|
|
824
|
+
set options [Parseoptions [exec lpoptions -p $printer]]
|
|
825
|
+
dict set res $printer $options
|
|
826
|
+
}
|
|
827
|
+
} trap {POSIX ENOENT} {e o} {
|
|
828
|
+
# no such command in PATH
|
|
829
|
+
set cmd [lindex [dict get $o -errorstack ] 1 2]
|
|
830
|
+
return -code error "Unable to obtain the list of printers.\
|
|
831
|
+
Command \"$cmd\" not found.\
|
|
832
|
+
Please install the CUPS package for your system."
|
|
833
|
+
} trap {CHILDSTATUS} {e o} {
|
|
834
|
+
# command returns a non-0 exit status. Wrong print system?
|
|
835
|
+
set cmd [lindex [dict get $o -errorstack ] 1 2]
|
|
836
|
+
return -code error "Command \"$cmd\" return with errors"
|
|
837
|
+
}
|
|
838
|
+
return [set pcache $res]
|
|
839
|
+
}
|
|
840
|
+
|
|
841
|
+
# Parseoptions
|
|
842
|
+
# Parse lpoptions -d output. It has three forms
|
|
843
|
+
# option-key
|
|
844
|
+
# option-key=option-value
|
|
845
|
+
# option-key='option value with spaces'
|
|
846
|
+
# Arguments:
|
|
847
|
+
# data - data to process.
|
|
848
|
+
#
|
|
849
|
+
proc ::tk::print::cups::Parseoptions {data} {
|
|
850
|
+
set res {}
|
|
851
|
+
set re {[^ =]+|[^ ]+='[^']+'|[^ ]+=[^ ']+}
|
|
852
|
+
foreach tok [regexp -inline -all $re $data] {
|
|
853
|
+
lassign [split $tok "="] k v
|
|
854
|
+
dict set res $k [string trim $v "'"]
|
|
855
|
+
}
|
|
856
|
+
return $res
|
|
857
|
+
}
|
|
858
|
+
|
|
859
|
+
proc ::tk::print::cups::print {printer data args} {
|
|
860
|
+
variable pcache
|
|
861
|
+
if {$printer ni [dict keys $pcache]} {
|
|
862
|
+
return -code error "unknown printer or class \"$printer\""
|
|
863
|
+
}
|
|
864
|
+
set title "Tk print job"
|
|
865
|
+
set options {
|
|
866
|
+
-colormode -copies -format -margins -media -nup -orientation
|
|
867
|
+
-prettyprint -title -tzoom
|
|
868
|
+
}
|
|
869
|
+
while {[llength $args]} {
|
|
870
|
+
set opt [tcl::prefix match $options [lpop args 0]]
|
|
871
|
+
switch $opt {
|
|
872
|
+
-colormode {
|
|
873
|
+
set opts {auto monochrome color}
|
|
874
|
+
set val [tcl::prefix match $opts [lpop args 0]]
|
|
875
|
+
lappend printargs -o print-color-mode=$val
|
|
876
|
+
}
|
|
877
|
+
-copies {
|
|
878
|
+
set val [lpop args 0]
|
|
879
|
+
if {![string is integer -strict $val] ||
|
|
880
|
+
$val < 0 || $val > 100
|
|
881
|
+
} {
|
|
882
|
+
# save paper !!
|
|
883
|
+
return -code error "copies must be an integer\
|
|
884
|
+
between 0 and 100"
|
|
885
|
+
}
|
|
886
|
+
lappend printargs -o copies=$val
|
|
887
|
+
}
|
|
888
|
+
-format {
|
|
889
|
+
set opts {auto pdf postscript text}
|
|
890
|
+
set val [tcl::prefix match $opts [lpop args 0]]
|
|
891
|
+
# lpr uses auto always
|
|
892
|
+
}
|
|
893
|
+
-margins {
|
|
894
|
+
set val [lpop args 0]
|
|
895
|
+
if {[llength $val] != 4 ||
|
|
896
|
+
![string is integer -strict [lindex $val 0]] ||
|
|
897
|
+
![string is integer -strict [lindex $val 1]] ||
|
|
898
|
+
![string is integer -strict [lindex $val 2]] ||
|
|
899
|
+
![string is integer -strict [lindex $val 3]]
|
|
900
|
+
} {
|
|
901
|
+
return -code error "margins must be a list of 4\
|
|
902
|
+
integers: top left bottom right"
|
|
903
|
+
}
|
|
904
|
+
lappend printargs -o page-top=[lindex $val 0]
|
|
905
|
+
lappend printargs -o page-left=[lindex $val 1]
|
|
906
|
+
lappend printargs -o page-bottom=[lindex $val 2]
|
|
907
|
+
lappend printargs -o page-right=[lindex $val 3]
|
|
908
|
+
}
|
|
909
|
+
-media {
|
|
910
|
+
set opts {a4 legal letter}
|
|
911
|
+
set val [tcl::prefix match $opts [lpop args 0]]
|
|
912
|
+
lappend printargs -o media=$val
|
|
913
|
+
}
|
|
914
|
+
-nup {
|
|
915
|
+
set val [lpop args 0]
|
|
916
|
+
if {$val ni {1 2 4 6 9 16}} {
|
|
917
|
+
return -code error "number-up must be 1, 2, 4, 6, 9 or\
|
|
918
|
+
16"
|
|
919
|
+
}
|
|
920
|
+
lappend printargs -o number-up=$val
|
|
921
|
+
}
|
|
922
|
+
-orientation {
|
|
923
|
+
set opts {portrait landscape}
|
|
924
|
+
set val [tcl::prefix match $opts [lpop args 0]]
|
|
925
|
+
if {$val eq "landscape"}
|
|
926
|
+
lappend printargs -o landscape=true
|
|
927
|
+
}
|
|
928
|
+
-prettyprint {
|
|
929
|
+
lappend printargs -o prettyprint=true
|
|
930
|
+
# prettyprint mess with these default values if set
|
|
931
|
+
# so we force them.
|
|
932
|
+
# these will be overriden if set after this point
|
|
933
|
+
if {[lsearch $printargs {cpi=*}] == -1} {
|
|
934
|
+
lappend printargs -o cpi=10.0
|
|
935
|
+
lappend printargs -o lpi=6.0
|
|
936
|
+
}
|
|
937
|
+
}
|
|
938
|
+
-title {
|
|
939
|
+
set title [lpop args 0]
|
|
940
|
+
}
|
|
941
|
+
-tzoom {
|
|
942
|
+
set val [lpop args 0]
|
|
943
|
+
if {![string is double -strict $val] ||
|
|
944
|
+
$val < 0.5 || $val > 2.0
|
|
945
|
+
} {
|
|
946
|
+
return -code error "text zoom must be a number between\
|
|
947
|
+
0.5 and 2.0"
|
|
948
|
+
}
|
|
949
|
+
# CUPS text filter defaults to lpi=6 and cpi=10
|
|
950
|
+
lappend printargs -o cpi=[expr {10.0 / $val}]
|
|
951
|
+
lappend printargs -o lpi=[expr {6.0 / $val}]
|
|
952
|
+
}
|
|
953
|
+
default {
|
|
954
|
+
# shouldn't happen
|
|
955
|
+
}
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
# build our options
|
|
959
|
+
lappend printargs -T $title
|
|
960
|
+
lappend printargs -P $printer
|
|
961
|
+
# open temp file
|
|
962
|
+
set fd [file tempfile fname tk_print]
|
|
963
|
+
chan configure $fd -translation binary
|
|
964
|
+
chan puts $fd $data
|
|
965
|
+
chan close $fd
|
|
966
|
+
# add -r to automatically delete temp files
|
|
967
|
+
exec lpr {*}$printargs -r $fname &
|
|
968
|
+
}
|
|
969
|
+
|
|
970
|
+
namespace eval ::tk::print::cups {
|
|
971
|
+
namespace export defaultprinter getprinters print
|
|
972
|
+
namespace ensemble create
|
|
973
|
+
}
|
|
974
|
+
};# ::tk::print::cups
|
|
975
|
+
|
|
976
|
+
namespace eval ::tk::print {
|
|
977
|
+
|
|
978
|
+
variable mcmap
|
|
979
|
+
set mcmap(media) [dict create \
|
|
980
|
+
[mc "Letter"] letter \
|
|
981
|
+
[mc "Legal"] legal \
|
|
982
|
+
[mc "A4"] a4]
|
|
983
|
+
set mcmap(orient) [dict create \
|
|
984
|
+
[mc "Portrait"] portrait \
|
|
985
|
+
[mc "Landscape"] landscape]
|
|
986
|
+
set mcmap(color) [dict create \
|
|
987
|
+
[mc "RGB"] color \
|
|
988
|
+
[mc "Grayscale"] gray]
|
|
989
|
+
|
|
990
|
+
# available print options
|
|
991
|
+
variable optlist
|
|
992
|
+
set optlist(printer) {}
|
|
993
|
+
set optlist(media) [dict keys $mcmap(media)]
|
|
994
|
+
set optlist(orient) [dict keys $mcmap(orient)]
|
|
995
|
+
set optlist(color) [dict keys $mcmap(color)]
|
|
996
|
+
set optlist(number-up) {1 2 4 6 9 16}
|
|
997
|
+
|
|
998
|
+
# selected options
|
|
999
|
+
variable option
|
|
1000
|
+
set option(printer) {}
|
|
1001
|
+
# Initialize with sane defaults.
|
|
1002
|
+
set option(copies) 1
|
|
1003
|
+
set option(media) [mc "A4"]
|
|
1004
|
+
# Canvas options
|
|
1005
|
+
set option(orient) [mc "Portrait"]
|
|
1006
|
+
set option(color) [mc "RGB"]
|
|
1007
|
+
set option(czoom) 100
|
|
1008
|
+
# Text options.
|
|
1009
|
+
# See libcupsfilter's cfFilterTextToPDF() and cups-filters's texttopdf
|
|
1010
|
+
# known options:
|
|
1011
|
+
# prettyprint, wrap, columns, lpi, cpi
|
|
1012
|
+
set option(number-up) 1
|
|
1013
|
+
set option(tzoom) 100; # we derive lpi and cpi from this value
|
|
1014
|
+
set option(pprint) 0 ; # pretty print
|
|
1015
|
+
# convert margins from mm to points
|
|
1016
|
+
variable margin
|
|
1017
|
+
set option(margin-top) [expr {int($margin(top) * 72 / 25.4)}]
|
|
1018
|
+
set option(margin-left) [expr {int($margin(left) * 72 / 25.4)}]
|
|
1019
|
+
set option(margin-right) [expr {int($margin(right) * 72 / 25.4)}]
|
|
1020
|
+
set option(margin-bottom) [expr {int($margin(bottom) * 72 / 25.4)}]
|
|
1021
|
+
|
|
1022
|
+
# array to collect printer information
|
|
1023
|
+
variable pinfo
|
|
1024
|
+
array set pinfo {}
|
|
1025
|
+
|
|
1026
|
+
# a map for printer state -> human readable message
|
|
1027
|
+
variable statemap
|
|
1028
|
+
dict set statemap 3 [mc "Idle"]
|
|
1029
|
+
dict set statemap 4 [mc "Printing"]
|
|
1030
|
+
dict set statemap 5 [mc "Printer stopped"]
|
|
1031
|
+
}
|
|
1032
|
+
|
|
1033
|
+
# ttk version of [tk_optionMenu]
|
|
1034
|
+
# var should be a full qualified varname
|
|
1035
|
+
proc ::tk::print::ttk_optionMenu {w var args} {
|
|
1036
|
+
ttk::menubutton $w -textvariable $var -menu $w.menu
|
|
1037
|
+
menu $w.menu
|
|
1038
|
+
foreach option $args {
|
|
1039
|
+
$w.menu add command \
|
|
1040
|
+
-label $option \
|
|
1041
|
+
-command [list set $var $option]
|
|
1042
|
+
}
|
|
1043
|
+
# return the same value as tk_optionMenu
|
|
1044
|
+
return $w.menu
|
|
1045
|
+
}
|
|
1046
|
+
|
|
1047
|
+
# _setprintenv
|
|
1048
|
+
# Set the print environtment - list of printers, state and options.
|
|
1049
|
+
# Arguments:
|
|
1050
|
+
# none.
|
|
1051
|
+
#
|
|
1052
|
+
proc ::tk::print::_setprintenv {} {
|
|
1053
|
+
variable option
|
|
1054
|
+
variable optlist
|
|
1055
|
+
variable pinfo
|
|
1056
|
+
|
|
1057
|
+
set optlist(printer) {}
|
|
1058
|
+
dict for {printer options} [cups getprinters] {
|
|
1059
|
+
lappend optlist(printer) $printer
|
|
1060
|
+
set pinfo($printer) $options
|
|
1061
|
+
}
|
|
1062
|
+
|
|
1063
|
+
# It's an error to not have any printer configured
|
|
1064
|
+
if {[llength $optlist(printer)] == 0} {
|
|
1065
|
+
return -code error "No installed printers found.\
|
|
1066
|
+
Please check or update your CUPS installation."
|
|
1067
|
+
}
|
|
1068
|
+
|
|
1069
|
+
# If no printer is selected, check for the default one
|
|
1070
|
+
# If none found, use the first one from the list
|
|
1071
|
+
if {$option(printer) eq ""} {
|
|
1072
|
+
set option(printer) [cups defaultprinter]
|
|
1073
|
+
if {$option(printer) eq ""} {
|
|
1074
|
+
set option(printer) [lindex $optlist(printer) 0]
|
|
1075
|
+
}
|
|
1076
|
+
}
|
|
1077
|
+
}
|
|
1078
|
+
|
|
1079
|
+
# _print
|
|
1080
|
+
# Main printer dialog.
|
|
1081
|
+
# Select printer, set options, and fire print command.
|
|
1082
|
+
# Arguments:
|
|
1083
|
+
# w - widget with contents to print.
|
|
1084
|
+
#
|
|
1085
|
+
proc ::tk::print::_print {w} {
|
|
1086
|
+
variable optlist
|
|
1087
|
+
variable option
|
|
1088
|
+
variable pinfo
|
|
1089
|
+
variable statemap
|
|
1090
|
+
|
|
1091
|
+
# default values for dialog widgets
|
|
1092
|
+
option add *Printdialog*TLabel.anchor e
|
|
1093
|
+
option add *Printdialog*TMenubutton.Menu.tearOff 0
|
|
1094
|
+
option add *Printdialog*TMenubutton.width 12
|
|
1095
|
+
option add *Printdialog*TSpinbox.width 12
|
|
1096
|
+
# this is tempting to add, but it's better to leave it to
|
|
1097
|
+
# user's taste.
|
|
1098
|
+
# option add *Printdialog*Menu.background snow
|
|
1099
|
+
|
|
1100
|
+
set class [winfo class $w]
|
|
1101
|
+
if {$class ni {Text Canvas}} {
|
|
1102
|
+
return -code error "printing windows of class \"$class\"\
|
|
1103
|
+
is not supported"
|
|
1104
|
+
}
|
|
1105
|
+
# Should this be called with every invocaton?
|
|
1106
|
+
# Yes. It allows dynamic discovery of newly added printers
|
|
1107
|
+
# whithout having to restart the app
|
|
1108
|
+
_setprintenv
|
|
1109
|
+
|
|
1110
|
+
set p ._print
|
|
1111
|
+
destroy $p
|
|
1112
|
+
|
|
1113
|
+
# Copy the current values to a dialog's temporary variable.
|
|
1114
|
+
# This allow us to cancel the dialog discarding any changes
|
|
1115
|
+
# made to the options
|
|
1116
|
+
namespace eval dlg {variable option}
|
|
1117
|
+
array set dlg::option [array get option]
|
|
1118
|
+
set var [namespace which -variable dlg::option]
|
|
1119
|
+
|
|
1120
|
+
# The toplevel of our dialog
|
|
1121
|
+
toplevel $p -class Printdialog
|
|
1122
|
+
place [ttk::frame $p.background] -x 0 -y 0 -relwidth 1.0 -relheight 1.0
|
|
1123
|
+
wm title $p [mc "Print"]
|
|
1124
|
+
wm resizable $p 0 0
|
|
1125
|
+
wm attributes $p -type dialog
|
|
1126
|
+
wm transient $p [winfo toplevel $w]
|
|
1127
|
+
|
|
1128
|
+
# The printer to use
|
|
1129
|
+
set pf [ttk::frame $p.printerf]
|
|
1130
|
+
pack $pf -side top -fill x -expand no -padx 9p -pady 9p
|
|
1131
|
+
|
|
1132
|
+
ttk::label $pf.printerl -text "[mc "Printer"]"
|
|
1133
|
+
set tv [ttk::treeview $pf.prlist -height 5 \
|
|
1134
|
+
-columns {printer location state} \
|
|
1135
|
+
-show headings \
|
|
1136
|
+
-selectmode browse]
|
|
1137
|
+
$tv configure \
|
|
1138
|
+
-yscrollcommand [namespace code [list _scroll $pf.sy]] \
|
|
1139
|
+
-xscrollcommand [namespace code [list _scroll $pf.sx]]
|
|
1140
|
+
ttk::scrollbar $pf.sy -command [list $tv yview]
|
|
1141
|
+
ttk::scrollbar $pf.sx -command [list $tv xview] -orient horizontal
|
|
1142
|
+
$tv heading printer -text [mc "Printer"]
|
|
1143
|
+
$tv heading location -text [mc "Location"]
|
|
1144
|
+
$tv heading state -text [mc "State"]
|
|
1145
|
+
$tv column printer -width 200 -stretch 0
|
|
1146
|
+
$tv column location -width 100 -stretch 0
|
|
1147
|
+
$tv column state -width 250 -stretch 0
|
|
1148
|
+
|
|
1149
|
+
foreach printer $optlist(printer) {
|
|
1150
|
+
set location [dict getdef $pinfo($printer) printer-location ""]
|
|
1151
|
+
set nstate [dict getdef $pinfo($printer) printer-state 0]
|
|
1152
|
+
set state [dict getdef $statemap $nstate ""]
|
|
1153
|
+
switch -- $nstate {
|
|
1154
|
+
3 - 4 {
|
|
1155
|
+
set accepting [dict getdef $pinfo($printer) \
|
|
1156
|
+
printer-is-accepting-jobs ""]
|
|
1157
|
+
if {$accepting ne ""} {
|
|
1158
|
+
append state ". " [mc "Printer is accepting jobs"]
|
|
1159
|
+
}
|
|
1160
|
+
}
|
|
1161
|
+
5 {
|
|
1162
|
+
set reason [dict getdef $pinfo($printer) \
|
|
1163
|
+
printer-state-reasons ""]
|
|
1164
|
+
if {$reason ne ""} {
|
|
1165
|
+
append state ". (" $reason ")"
|
|
1166
|
+
}
|
|
1167
|
+
}
|
|
1168
|
+
}
|
|
1169
|
+
set id [$tv insert {} end \
|
|
1170
|
+
-values [list $printer $location $state]]
|
|
1171
|
+
if {$option(printer) eq $printer} {
|
|
1172
|
+
$tv selection set $id
|
|
1173
|
+
}
|
|
1174
|
+
}
|
|
1175
|
+
|
|
1176
|
+
grid $pf.printerl -sticky w
|
|
1177
|
+
grid $pf.prlist $pf.sy -sticky news
|
|
1178
|
+
grid $pf.sx -sticky ew
|
|
1179
|
+
grid remove $pf.sy $pf.sx
|
|
1180
|
+
bind $tv <<TreeviewSelect>> [namespace code {_onselect %W}]
|
|
1181
|
+
|
|
1182
|
+
# Start of printing options
|
|
1183
|
+
set of [ttk::labelframe $p.optionsframe -text [mc "Options"]]
|
|
1184
|
+
pack $of -fill x -padx 9p -pady {0 9p} -ipadx 2p -ipady 2p
|
|
1185
|
+
|
|
1186
|
+
# COPIES
|
|
1187
|
+
ttk::label $of.copiesl -text "[mc "Copies"] :"
|
|
1188
|
+
ttk::spinbox $of.copies -textvariable ${var}(copies) \
|
|
1189
|
+
-from 1 -to 1000
|
|
1190
|
+
grid $of.copiesl $of.copies -sticky ew -padx 2p -pady 2p
|
|
1191
|
+
$of.copies state readonly
|
|
1192
|
+
|
|
1193
|
+
# PAPER SIZE
|
|
1194
|
+
ttk::label $of.medial -text "[mc "Paper"] :"
|
|
1195
|
+
ttk_optionMenu $of.media ${var}(media) {*}$optlist(media)
|
|
1196
|
+
grid $of.medial $of.media -sticky ew -padx 2p -pady 2p
|
|
1197
|
+
|
|
1198
|
+
if {$class eq "Canvas"} {
|
|
1199
|
+
# additional options for Canvas output
|
|
1200
|
+
# SCALE
|
|
1201
|
+
ttk::label $of.percentl -text "[mc "Scale"] :"
|
|
1202
|
+
ttk::spinbox $of.percent -textvariable ${var}(czoom) \
|
|
1203
|
+
-from 5 -to 500 -increment 5
|
|
1204
|
+
grid $of.percentl $of.percent -sticky ew -padx 2p -pady 2p
|
|
1205
|
+
$of.percent state readonly
|
|
1206
|
+
|
|
1207
|
+
# ORIENT
|
|
1208
|
+
ttk::label $of.orientl -text "[mc "Orientation"] :"
|
|
1209
|
+
ttk_optionMenu $of.orient ${var}(orient) {*}$optlist(orient)
|
|
1210
|
+
grid $of.orientl $of.orient -sticky ew -padx 2p -pady 2p
|
|
1211
|
+
|
|
1212
|
+
# COLOR
|
|
1213
|
+
ttk::label $of.colorl -text "[mc "Output"] :"
|
|
1214
|
+
ttk_optionMenu $of.color ${var}(color) {*}$optlist(color)
|
|
1215
|
+
grid $of.colorl $of.color -sticky ew -padx 2p -pady 2p
|
|
1216
|
+
} elseif {$class eq "Text"} {
|
|
1217
|
+
# additional options for Text output
|
|
1218
|
+
# NUMBER-UP
|
|
1219
|
+
ttk::label $of.nupl -text "[mc "Pages per sheet"] :"
|
|
1220
|
+
ttk_optionMenu $of.nup ${var}(number-up) {*}$optlist(number-up)
|
|
1221
|
+
grid $of.nupl $of.nup -sticky ew -padx 2p -pady 2p
|
|
1222
|
+
|
|
1223
|
+
# TEXT SCALE
|
|
1224
|
+
ttk::label $of.tzooml -text "[mc "Text scale"] :"
|
|
1225
|
+
ttk::spinbox $of.tzoom -textvariable ${var}(tzoom) \
|
|
1226
|
+
-from 50 -to 200 -increment 5
|
|
1227
|
+
grid $of.tzooml $of.tzoom -sticky ew -padx 2p -pady 2p
|
|
1228
|
+
$of.tzoom state readonly
|
|
1229
|
+
|
|
1230
|
+
# PRETTY PRINT (banner on top)
|
|
1231
|
+
ttk::checkbutton $of.pprint -onvalue 1 -offvalue 0 \
|
|
1232
|
+
-text [mc "Pretty print"] \
|
|
1233
|
+
-variable ${var}(pprint)
|
|
1234
|
+
grid $of.pprint - -sticky ew -padx 2p -pady 2p
|
|
1235
|
+
}
|
|
1236
|
+
|
|
1237
|
+
# The buttons frame.
|
|
1238
|
+
set bf [ttk::frame $p.buttonf]
|
|
1239
|
+
pack $bf -fill x -expand no -side bottom -padx 9p -pady {0 9p}
|
|
1240
|
+
|
|
1241
|
+
ttk::button $bf.print -text [mc "Print"] \
|
|
1242
|
+
-command [namespace code [list _runprint $w $class $p]]
|
|
1243
|
+
ttk::button $bf.cancel -text [mc "Cancel"] \
|
|
1244
|
+
-command [list destroy $p]
|
|
1245
|
+
pack $bf.print -side right
|
|
1246
|
+
pack $bf.cancel -side right -padx {0 4.5p}
|
|
1247
|
+
|
|
1248
|
+
# cleanup binding
|
|
1249
|
+
bind $bf <Destroy> [namespace code [list _cleanup $p]]
|
|
1250
|
+
|
|
1251
|
+
# Center the window as a dialog.
|
|
1252
|
+
::tk::PlaceWindow $p
|
|
1253
|
+
}
|
|
1254
|
+
|
|
1255
|
+
# _onselect
|
|
1256
|
+
# Updates the selected printer when treeview selection changes.
|
|
1257
|
+
# Arguments:
|
|
1258
|
+
# tv - treeview pathname.
|
|
1259
|
+
#
|
|
1260
|
+
proc ::tk::print::_onselect {tv} {
|
|
1261
|
+
variable dlg::option
|
|
1262
|
+
set id [$tv selection]
|
|
1263
|
+
if {$id eq ""} {
|
|
1264
|
+
# is this even possible?
|
|
1265
|
+
set option(printer) ""
|
|
1266
|
+
} else {
|
|
1267
|
+
set option(printer) [$tv set $id printer]
|
|
1268
|
+
}
|
|
1269
|
+
}
|
|
1270
|
+
|
|
1271
|
+
# _scroll
|
|
1272
|
+
# Implements autoscroll for the printers view
|
|
1273
|
+
#
|
|
1274
|
+
proc ::tk::print::_scroll {sbar from to} {
|
|
1275
|
+
if {$from == 0.0 && $to == 1.0} {
|
|
1276
|
+
grid remove $sbar
|
|
1277
|
+
} else {
|
|
1278
|
+
grid $sbar
|
|
1279
|
+
$sbar set $from $to
|
|
1280
|
+
}
|
|
1281
|
+
}
|
|
1282
|
+
|
|
1283
|
+
# _cleanup
|
|
1284
|
+
# Perform cleanup when the dialog is destroyed.
|
|
1285
|
+
# Arguments:
|
|
1286
|
+
# p - print dialog pathname (not used).
|
|
1287
|
+
#
|
|
1288
|
+
proc ::tk::print::_cleanup {p} {
|
|
1289
|
+
namespace delete dlg
|
|
1290
|
+
}
|
|
1291
|
+
|
|
1292
|
+
# _runprint -
|
|
1293
|
+
# Execute the print command--print the file.
|
|
1294
|
+
# Arguments:
|
|
1295
|
+
# w - widget with contents to print.
|
|
1296
|
+
# class - class of the widget to print (Canvas or Text).
|
|
1297
|
+
# p - print dialog pathname.
|
|
1298
|
+
#
|
|
1299
|
+
proc ::tk::print::_runprint {w class p} {
|
|
1300
|
+
variable option
|
|
1301
|
+
variable mcmap
|
|
1302
|
+
|
|
1303
|
+
# copy the values back from the dialog
|
|
1304
|
+
array set option [array get dlg::option]
|
|
1305
|
+
|
|
1306
|
+
# get (back) name of media from the translated one
|
|
1307
|
+
set media [dict get $mcmap(media) $option(media)]
|
|
1308
|
+
set printargs {}
|
|
1309
|
+
lappend printargs -title "[tk appname]: Tk window $w"
|
|
1310
|
+
lappend printargs -copies $option(copies)
|
|
1311
|
+
lappend printargs -media $media
|
|
1312
|
+
|
|
1313
|
+
if {$class eq "Canvas"} {
|
|
1314
|
+
set colormode [dict get $mcmap(color) $option(color)]
|
|
1315
|
+
set rotate 0
|
|
1316
|
+
if {[dict get $mcmap(orient) $option(orient)] eq "landscape"} {
|
|
1317
|
+
set rotate 1
|
|
1318
|
+
}
|
|
1319
|
+
# Scale based on size of widget, not size of paper.
|
|
1320
|
+
set args {}
|
|
1321
|
+
set sr [$w cget -scrollregion]
|
|
1322
|
+
if {$sr != ""} {
|
|
1323
|
+
set sr [lmap x $sr {
|
|
1324
|
+
winfo pixels $w $x
|
|
1325
|
+
}]
|
|
1326
|
+
foreach k {-x -y -width -height} x $sr {
|
|
1327
|
+
lappend args $k $x
|
|
1328
|
+
}
|
|
1329
|
+
}
|
|
1330
|
+
# TODO: is this correct??
|
|
1331
|
+
set printwidth [expr {
|
|
1332
|
+
$option(czoom) / 100.0 * [winfo width $w]
|
|
1333
|
+
}]
|
|
1334
|
+
set data [encoding convertto iso8859-1 [$w postscript \
|
|
1335
|
+
-colormode $colormode -rotate $rotate -pagewidth $printwidth \
|
|
1336
|
+
{*}$args]]
|
|
1337
|
+
} elseif {$class eq "Text"} {
|
|
1338
|
+
set tzoom [expr {$option(tzoom) / 100.0}]
|
|
1339
|
+
if {$option(tzoom) != 100} {
|
|
1340
|
+
lappend printargs -tzoom $tzoom
|
|
1341
|
+
}
|
|
1342
|
+
if {$option(pprint)} {
|
|
1343
|
+
lappend printargs -prettyprint
|
|
1344
|
+
}
|
|
1345
|
+
if {$option(number-up) != 1} {
|
|
1346
|
+
lappend printargs -nup $option(number-up)
|
|
1347
|
+
}
|
|
1348
|
+
# these are hardcoded. Should we allow the user to control
|
|
1349
|
+
# margins?
|
|
1350
|
+
lappend printargs -margins [list \
|
|
1351
|
+
$option(margin-top) $option(margin-left) \
|
|
1352
|
+
$option(margin-bottom) $option(margin-right) ]
|
|
1353
|
+
# get the data in shape. Cupsfilter's text filter wraps lines
|
|
1354
|
+
# at character level, not words, so we do it by ourselves.
|
|
1355
|
+
# compute usable page width in inches
|
|
1356
|
+
set pw [dict get {a4 8.27 legal 8.5 letter 8.5} $media]
|
|
1357
|
+
set pw [expr {
|
|
1358
|
+
$pw - ($option(margin-left) + $option(margin-right)) / 72.0
|
|
1359
|
+
}]
|
|
1360
|
+
# set the wrap length at 98% of computed page width in chars
|
|
1361
|
+
# the 9.8 constant is the product 10.0 (default cpi) * 0.95
|
|
1362
|
+
set wl [expr {int( 9.8 * $pw / $tzoom )}]
|
|
1363
|
+
set data [encoding convertto utf-8 \
|
|
1364
|
+
[join [_wrapLines [$w get 1.0 end] $wl] "\n"]]
|
|
1365
|
+
}
|
|
1366
|
+
|
|
1367
|
+
# launch the job in the background
|
|
1368
|
+
after idle [namespace code \
|
|
1369
|
+
[list cups print $option(printer) $data {*}$printargs]]
|
|
1370
|
+
destroy $p
|
|
1371
|
+
}
|
|
1372
|
+
}
|
|
1373
|
+
#end X11 procedures
|
|
1374
|
+
|
|
1375
|
+
namespace eval ::tk::print {
|
|
1376
|
+
#begin macOS Aqua procedures
|
|
1377
|
+
if {[tk windowingsystem] eq "aqua"} {
|
|
1378
|
+
# makePDF -
|
|
1379
|
+
# Convert a file to PDF
|
|
1380
|
+
# Arguments:
|
|
1381
|
+
# inFilename - file containing the data to convert; format is
|
|
1382
|
+
# autodetected.
|
|
1383
|
+
# outFilename - base for filename to write to; conventionally should
|
|
1384
|
+
# have .pdf as suffix
|
|
1385
|
+
# Returns:
|
|
1386
|
+
# The full pathname of the generated PDF.
|
|
1387
|
+
#
|
|
1388
|
+
proc makePDF {inFilename outFilename} {
|
|
1389
|
+
set out [::tk::print::makeTempFile $outFilename]
|
|
1390
|
+
try {
|
|
1391
|
+
exec /usr/sbin/cupsfilter $inFilename > $out
|
|
1392
|
+
} trap NONE {msg} {
|
|
1393
|
+
# cupsfilter produces a lot of debugging output, which we
|
|
1394
|
+
# don't want.
|
|
1395
|
+
regsub -all -line {^(?:DEBUG|INFO):.*$} $msg "" msg
|
|
1396
|
+
set msg [string trimleft [regsub -all {\n+} $msg "\n"] "\n"]
|
|
1397
|
+
if {$msg ne ""} {
|
|
1398
|
+
# Lines should be prefixed with WARN or ERROR now
|
|
1399
|
+
puts $msg
|
|
1400
|
+
}
|
|
1401
|
+
}
|
|
1402
|
+
return $out
|
|
1403
|
+
}
|
|
1404
|
+
}
|
|
1405
|
+
#end macOS Aqua procedures
|
|
1406
|
+
|
|
1407
|
+
namespace export canvas text
|
|
1408
|
+
namespace ensemble create
|
|
1409
|
+
}
|
|
1410
|
+
|
|
1411
|
+
# tk print --
|
|
1412
|
+
# This procedure prints the canvas and text widgets using platform-
|
|
1413
|
+
# native API's.
|
|
1414
|
+
# Arguments:
|
|
1415
|
+
# w: Widget to print.
|
|
1416
|
+
proc ::tk::print {w} {
|
|
1417
|
+
switch [winfo class $w],[tk windowingsystem] {
|
|
1418
|
+
"Canvas,win32" -
|
|
1419
|
+
"Text,win32" {
|
|
1420
|
+
tailcall ::tk::print::_print $w
|
|
1421
|
+
}
|
|
1422
|
+
"Canvas,x11" -
|
|
1423
|
+
"Text,x11" {
|
|
1424
|
+
tailcall ::tk::print::_print $w
|
|
1425
|
+
}
|
|
1426
|
+
"Canvas,aqua" {
|
|
1427
|
+
::tk::print::_printcanvas $w
|
|
1428
|
+
set printfile /tmp/tk_canvas.pdf
|
|
1429
|
+
::tk::print::_print $printfile
|
|
1430
|
+
}
|
|
1431
|
+
"Text,aqua" {
|
|
1432
|
+
set txtfile [::tk::print::makeTempFile tk_text.txt [$w get 1.0 end]]
|
|
1433
|
+
try {
|
|
1434
|
+
set printfile [::tk::print::makePDF $txtfile [file join /tmp tk_text.pdf]]
|
|
1435
|
+
::tk::print::_print $printfile
|
|
1436
|
+
} finally {
|
|
1437
|
+
file delete $txtfile
|
|
1438
|
+
}
|
|
1439
|
+
}
|
|
1440
|
+
|
|
1441
|
+
default {
|
|
1442
|
+
return -code error -errorcode {TK PRINT CLASS_UNSUPPORTED} \
|
|
1443
|
+
"widgets of class [winfo class $w] are not supported on\
|
|
1444
|
+
this platform"
|
|
1445
|
+
}
|
|
1446
|
+
}
|
|
1447
|
+
}
|
|
1448
|
+
|
|
1449
|
+
#Add this command to the tk command ensemble: tk print
|
|
1450
|
+
#Thanks to Christian Gollwitzer for the guidance here
|
|
1451
|
+
namespace ensemble configure tk -map \
|
|
1452
|
+
[dict merge [namespace ensemble configure tk -map] \
|
|
1453
|
+
{print ::tk::print}]
|
|
1454
|
+
|
|
1455
|
+
return
|
|
1456
|
+
|
|
1457
|
+
# Local Variables:
|
|
1458
|
+
# mode: tcl
|
|
1459
|
+
# fill-column: 78
|
|
1460
|
+
# End:
|