rp 0.1.1373__tar.gz → 0.1.1375__tar.gz
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.
- {rp-0.1.1373 → rp-0.1.1375}/PKG-INFO +1 -1
- {rp-0.1.1373 → rp-0.1.1375}/rp/__main__.py +19 -3
- rp-0.1.1375/rp/libs/powerpoint/__init__.py +4 -0
- rp-0.1.1375/rp/libs/powerpoint/__main__.py +153 -0
- rp-0.1.1375/rp/libs/powerpoint/convert_pptx_videos_to_gifs.py +816 -0
- rp-0.1.1375/rp/libs/powerpoint/google_slides_upload.py +447 -0
- rp-0.1.1375/rp/libs/powerpoint/pptx_utils.py +233 -0
- rp-0.1.1375/rp/libs/pw_crypt.py +156 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/list_of_modules.py +1 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/r.py +89 -20
- rp-0.1.1375/rp/version.py +1 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp.egg-info/PKG-INFO +1 -1
- {rp-0.1.1373 → rp-0.1.1375}/rp.egg-info/SOURCES.txt +21 -0
- rp-0.1.1375/version.py +1 -0
- rp-0.1.1373/rp/version.py +0 -1
- rp-0.1.1373/version.py +0 -1
- {rp-0.1.1373 → rp-0.1.1375}/.gitignore +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.idea/QuickPython.iml +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.idea/QuickPython.time +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.idea/encodings.xml +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.idea/inspectionProfiles/Project_Default.xml +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.idea/misc.xml +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.idea/modules.xml +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.idea/vcs.xml +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.idea/workspace.xml +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.publish.sh.un~ +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.setup.py.un~ +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/.update_module_paths.py.un~ +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/LICENSE.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/README +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/Scrap +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/aoisdasd +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/increment_version.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/oijio +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/publish.sh +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/pyqtconsoletest.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/documentation.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/Pyperclip.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/debug_comment.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/draw_code_minimap.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/graveyard.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/_compatibility.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/cache.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/file_io.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/grammar.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/normalizer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/parser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/pgen2/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/pgen2/generator.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/pgen2/grammar_parser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/diff.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/errors.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar26.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar27.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar310.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar311.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar312.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar33.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar34.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar35.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar36.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar37.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar38.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/grammar39.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/parser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/pep8.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/prefix.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/token.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/tokenize.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/python/tree.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/tree.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/parso/utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/peepdis/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/peepdis/core.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/peepdis/datastructures.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/peepdis/legacy.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/peepdis/preferences.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/powerpoint_converter.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/profile_vim_plugins.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/bindings/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/bindings/flann_ctypes.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/exceptions.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/index.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/io/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/io/binary_dataset.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/io/dat_dataset.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/io/dataset.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/io/hdf5_dataset.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/io/npy_dataset.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/util/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyflann/util/weave_tools.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/__version__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/app.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/cli.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/cli_utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/config/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/config/config.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/config/config_error.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/config/config_parser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/config/config_transformer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/config/validators/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/config/validators/options.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/logging.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/autocomplete/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/autocomplete/autocomplete_listener.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/common/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/common/jsonpath/JSONPathLexer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/common/jsonpath/JSONPathListener.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/common/jsonpath/JSONPathParser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/common/jsonpath/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/io/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/io/datasource.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/model/model.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/service/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/service/client.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/service/dispatcher.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/common/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/common/popup.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/common/selectable_text.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/autocomplete_popup/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/autocomplete_popup/autocomplete_popup.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/autocomplete_popup/autocomplete_popup_keymapper.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/help_bar/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/help_bar/help_bar.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/help_page/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/help_page/detailed_help_page.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/json_browser/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/json_browser/json_browser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/json_browser/json_browser_keymapper.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/query_bar/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/query_bar/query_bar.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/components/query_bar/query_bar_keymapper.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/array/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/array/array_end_node.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/array/array_end_widget.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/array/array_node.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/array/array_start_widget.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/array/array_unexpanded_widget.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/json_composite_end_node.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/json_composite_node.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/json_listbox.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/json_listwalker.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/json_simple_node.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/json_widget.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/node_factory.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/object/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/object/object_end_node.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/object/object_end_widget.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/object/object_node.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/object/object_start_widget.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/object/object_unexpanded_widget.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/primitive/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/primitive/base.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/primitive/boolean.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/primitive/generic.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/primitive/integer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/primitive/null.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/primitive/numeric.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/primitive/string.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/json_lib/selector/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/keymapper/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/keymapper/abstract_component_keymapper.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/keymapper/keymapper.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/keymapper/keymapper_config.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/keymapper/keymapper_config_parser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/theme/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/theme/theme.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/theme/theme_config.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/theme/theme_config_parser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/view_config.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/view_frame.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pyfx/view/view_manager.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pynput_recorder.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pypi_inspection.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/pytorch_module_explorer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/refactor/string_format/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/refactor/string_format/format_to_fstring_converter.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/refactor/string_format/fstring_converter.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/refactor/string_format/test_format_to_fstring_converter.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/refactor/string_format/test_fstring_converter.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/rp_black_macchiato.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/stamp_tensor.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/stdin_python_highlighter.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/__main__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/graphics/graphics/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/graphics/graphics/canvas.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/graphics/graphics/colors.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/graphics/graphics/console.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/graphics/graphics/funcs.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/graphics/graphics/nbinput.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/graphics/graphics/shapes.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/graphics/graphics/sprite.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/letters.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tetris/tetrisShapes.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/__main__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/argparser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/meta.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/methods/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/methods/ansi.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/methods/ansi_methods.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/methods/ascii.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/methods/method.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/methods/sixel.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/timg/renderer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/torch_hooks.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/torch_tools.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tracetraptest.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/tweenline.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/libs/webeval_dataset.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/Todo +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/blm.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/chainsaw.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/claude_bash.sh +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/claude_panel.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/death_of_the_mind.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/flappy.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/mario.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/matrix.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/mpi_untitled.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/py2048.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/pychess.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/rp_logo.svg +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/rp_mpi.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/ryan_zshrc.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/shotgun.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/skia_trail_interactive_paint_demo.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/snake.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/sudoku.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/tetris.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/misc/trans.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/application.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/auto_suggest.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/buffer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/buffer_mapping.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/cache.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/clipboard/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/clipboard/base.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/clipboard/in_memory.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/clipboard/pyperclip.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/completion.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/completers/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/completers/base.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/completers/filesystem.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/completers/system.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/regular_languages/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/regular_languages/compiler.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/regular_languages/completion.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/regular_languages/lexer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/regular_languages/regex_parser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/regular_languages/validation.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/telnet/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/telnet/application.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/telnet/log.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/telnet/protocol.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/telnet/server.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/validators/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/contrib/validators/base.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/document.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/enums.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/asyncio_base.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/asyncio_posix.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/asyncio_win32.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/base.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/callbacks.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/inputhook.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/posix.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/posix_utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/select.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/eventloop/win32.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/filters/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/filters/base.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/filters/cli.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/filters/types.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/filters/utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/history.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/input.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/interface.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/bindings/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/bindings/basic.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/bindings/completion.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/bindings/emacs.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/bindings/named_commands.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/bindings/scroll.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/bindings/vi.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/defaults.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/digraphs.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/input_processor.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/manager.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/registry.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/key_binding/vi_state.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/keys.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/containers.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/controls.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/dimension.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/lexers.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/margins.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/menus.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/mouse_handlers.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/processors.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/prompt.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/screen.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/toolbars.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/untitled.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/layout/utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/mouse_events.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/output.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/reactive.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/renderer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/search_state.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/selection.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/shortcuts.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/styles/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/styles/base.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/styles/defaults.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/styles/from_dict.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/styles/from_pygments.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/styles/utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/terminal/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/terminal/conemu_output.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/terminal/vt100_input.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/terminal/vt100_output.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/terminal/win32_input.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/terminal/win32_output.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/token.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/validation.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/prompt_toolkit/win32_types.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/__main__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/ast_selection.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/async_analyzer_base.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/async_jedi_highlighter.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/backslash_commands.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/bash_completer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/bash_extract.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/bash_inline.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/bash_rename.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/bash_selection.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/completer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/completer_old.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/completion_ranker.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/completion_schema.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/completion_types.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/eventloop.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/filters.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/history_browser.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/ipython.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/jedi_highlighter.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/jedi_lexer.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/jedi_utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/key_bindings.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/layout.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/patch_linecache.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/path_completer_utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/prompt_style.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/python_input.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/r_iterm_comm.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/refactor_extract.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/refactor_inline.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/refactor_move.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/refactor_move_bash.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/refactor_rename.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/repl.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/rp_ptpdb/__init__.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/rp_ptpdb/commands.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/rp_ptpdb/completers.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/rp_ptpdb/completion_hints.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/rp_ptpdb/grammar.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/rp_ptpdb/key_bindings.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/rp_ptpdb/layout.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/rp_ptpdb/style.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/rp_ptpdb/toolbars.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/selection_utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/style.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/testable_keybindings.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/treesitter_selection.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/treesitter_semantic.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/unreachable_detector.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/utils.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/rp_ptpython/validator.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/ryan_vimrc.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp/web_evaluator.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp.egg-info/dependency_links.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp.egg-info/entry_points.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp.egg-info/requires.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/rp.egg-info/top_level.txt +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/setup.cfg +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/setup.py +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/untitled.c +0 -0
- {rp-0.1.1373 → rp-0.1.1375}/update_module_paths.py +0 -0
|
@@ -58,6 +58,11 @@ def pop_args():
|
|
|
58
58
|
args.insert(0, value)
|
|
59
59
|
return args
|
|
60
60
|
|
|
61
|
+
RUN_MODULES = {
|
|
62
|
+
"ppt": "rp.libs.powerpoint",
|
|
63
|
+
"timg": "rp.libs.timg",
|
|
64
|
+
}
|
|
65
|
+
|
|
61
66
|
help_text = """
|
|
62
67
|
|
|
63
68
|
HELP:
|
|
@@ -69,8 +74,10 @@ HELP:
|
|
|
69
74
|
Format: rp call <funcname> arg1 arg2 arg3 --kwarg1 value1 --kwarg2 value2
|
|
70
75
|
exec Execute Python code with optional variable assignments
|
|
71
76
|
Format: rp exec <code> --variable1 value1 --variable2 value2
|
|
72
|
-
|
|
73
|
-
|
|
77
|
+
run Run a submodule
|
|
78
|
+
Format: rp run <submodule> [args...]
|
|
79
|
+
|
|
80
|
+
Note: All kwargs whose keys start with -- are evaluated as python code,
|
|
74
81
|
and all that start with --- are treated as string literals
|
|
75
82
|
Positional args are treated as string literals if --- precedes them
|
|
76
83
|
For example, `rp call list 123` is an error, but `rp call list --- 123` --> ['1', '2', '3']
|
|
@@ -119,8 +126,17 @@ def main():
|
|
|
119
126
|
|
|
120
127
|
ans = rp.exeval(code, scope=scope)
|
|
121
128
|
|
|
129
|
+
elif sys.argv[1] == "run":
|
|
130
|
+
import runpy
|
|
131
|
+
if len(sys.argv) < 3 or sys.argv[2] not in RUN_MODULES:
|
|
132
|
+
print("Usage: rp run <" + "|".join(RUN_MODULES) + "> [args...]")
|
|
133
|
+
return
|
|
134
|
+
sys.argv = [RUN_MODULES[sys.argv[2]]] + sys.argv[3:]
|
|
135
|
+
runpy.run_module(sys.argv[0], run_name='__main__', alter_sys=True)
|
|
136
|
+
return
|
|
137
|
+
|
|
122
138
|
else:
|
|
123
|
-
raise RuntimeError(help_text+"\nERROR: Supported rp commands: [exec, call] not "+sys.argv[1])
|
|
139
|
+
raise RuntimeError(help_text+"\nERROR: Supported rp commands: [exec, call, run] not "+sys.argv[1])
|
|
124
140
|
|
|
125
141
|
#It's often useful to pipe the ans by printing it
|
|
126
142
|
if ans is not None:
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"""CLI entry point for rp.libs.powerpoint.
|
|
2
|
+
|
|
3
|
+
Usage:
|
|
4
|
+
python -m rp.libs.powerpoint convert input.pptx
|
|
5
|
+
python -m rp.libs.powerpoint convert input.pptx --num-parts 3 --upload
|
|
6
|
+
python -m rp.libs.powerpoint upload folder_with_pptx/
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
import sys
|
|
10
|
+
import rp
|
|
11
|
+
|
|
12
|
+
from .convert_pptx_videos_to_gifs import convert_pptx_videos_to_gifs
|
|
13
|
+
from .google_slides_upload import upload_and_merge_pptx
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
def print_main_help():
|
|
17
|
+
print("""PowerPoint tools for video-to-GIF conversion and Google Slides upload.
|
|
18
|
+
|
|
19
|
+
Commands:
|
|
20
|
+
convert Convert PowerPoint videos to GIFs
|
|
21
|
+
upload Upload PPTX files to Google Slides and merge
|
|
22
|
+
|
|
23
|
+
Examples:
|
|
24
|
+
rp run ppt convert input.pptx
|
|
25
|
+
rp run ppt convert input.pptx --part-size 50MB
|
|
26
|
+
rp run ppt convert input.pptx --num-parts 3 --upload
|
|
27
|
+
rp run ppt upload output_folder/
|
|
28
|
+
rp run ppt upload part1.pptx part2.pptx part3.pptx
|
|
29
|
+
|
|
30
|
+
Run 'rp run ppt <command>' for command-specific help.""")
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
from .convert_pptx_videos_to_gifs import HELP as CONVERT_HELP
|
|
34
|
+
from .google_slides_upload import HELP as UPLOAD_HELP
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def cmd_convert(
|
|
38
|
+
input_pptx: str = None,
|
|
39
|
+
output_pptx: str = None,
|
|
40
|
+
target_size: str = '100MB',
|
|
41
|
+
fps: int = 10,
|
|
42
|
+
dpi_iters: int = 5,
|
|
43
|
+
dither: bool = True,
|
|
44
|
+
slides: str = None,
|
|
45
|
+
num_parts: int = 1,
|
|
46
|
+
upload: bool = False,
|
|
47
|
+
):
|
|
48
|
+
if input_pptx is None:
|
|
49
|
+
print(CONVERT_HELP)
|
|
50
|
+
return
|
|
51
|
+
return convert_pptx_videos_to_gifs(
|
|
52
|
+
input_pptx, output_pptx, target_size, fps, dpi_iters,
|
|
53
|
+
dither, slides, num_parts, upload
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
def cmd_upload(*paths, folder_name: str = None, merged_name: str = None):
|
|
58
|
+
if not paths:
|
|
59
|
+
print(UPLOAD_HELP)
|
|
60
|
+
return
|
|
61
|
+
if len(paths) == 1 and rp.folder_exists(paths[0]):
|
|
62
|
+
pptx_paths = sorted(rp.glob(rp.path_join(paths[0], '*.pptx')))
|
|
63
|
+
if not pptx_paths:
|
|
64
|
+
print(f"Error: No .pptx files found in {paths[0]}")
|
|
65
|
+
return
|
|
66
|
+
else:
|
|
67
|
+
pptx_paths = list(paths)
|
|
68
|
+
return upload_and_merge_pptx(pptx_paths, folder_name, merged_name)
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
def main():
|
|
72
|
+
args = sys.argv[1:]
|
|
73
|
+
|
|
74
|
+
if not args or args[0] in ('-h', '--help', 'help'):
|
|
75
|
+
print_main_help()
|
|
76
|
+
return
|
|
77
|
+
|
|
78
|
+
cmd = args[0]
|
|
79
|
+
rest = args[1:]
|
|
80
|
+
|
|
81
|
+
if cmd == 'convert':
|
|
82
|
+
if not rest or rest[0] in ('-h', '--help'):
|
|
83
|
+
print(CONVERT_HELP)
|
|
84
|
+
return
|
|
85
|
+
# Parse args manually for convert
|
|
86
|
+
kwargs = {
|
|
87
|
+
'input_pptx': None,
|
|
88
|
+
'output_pptx': None,
|
|
89
|
+
'target_size': '100MB',
|
|
90
|
+
'fps': 10,
|
|
91
|
+
'dpi_iters': 5,
|
|
92
|
+
'dither': True,
|
|
93
|
+
'slides': None,
|
|
94
|
+
'num_parts': 1,
|
|
95
|
+
'upload': False,
|
|
96
|
+
}
|
|
97
|
+
i = 0
|
|
98
|
+
while i < len(rest):
|
|
99
|
+
arg = rest[i]
|
|
100
|
+
if arg.startswith('--'):
|
|
101
|
+
key = arg[2:].replace('-', '_')
|
|
102
|
+
if key == 'upload':
|
|
103
|
+
kwargs['upload'] = True
|
|
104
|
+
elif key == 'no_dither':
|
|
105
|
+
kwargs['dither'] = False
|
|
106
|
+
elif key == 'dither':
|
|
107
|
+
kwargs['dither'] = True
|
|
108
|
+
elif i + 1 < len(rest):
|
|
109
|
+
val = rest[i + 1]
|
|
110
|
+
if key == 'part_size':
|
|
111
|
+
key = 'target_size' # alias
|
|
112
|
+
if key in ('fps', 'dpi_iters', 'num_parts'):
|
|
113
|
+
kwargs[key] = int(val)
|
|
114
|
+
else:
|
|
115
|
+
kwargs[key] = val
|
|
116
|
+
i += 1
|
|
117
|
+
elif kwargs['input_pptx'] is None:
|
|
118
|
+
kwargs['input_pptx'] = arg
|
|
119
|
+
else:
|
|
120
|
+
kwargs['output_pptx'] = arg
|
|
121
|
+
i += 1
|
|
122
|
+
cmd_convert(**kwargs)
|
|
123
|
+
|
|
124
|
+
elif cmd == 'upload':
|
|
125
|
+
if not rest or rest[0] in ('-h', '--help'):
|
|
126
|
+
print(UPLOAD_HELP)
|
|
127
|
+
return
|
|
128
|
+
# Parse args for upload
|
|
129
|
+
paths = []
|
|
130
|
+
folder_name = None
|
|
131
|
+
merged_name = None
|
|
132
|
+
i = 0
|
|
133
|
+
while i < len(rest):
|
|
134
|
+
arg = rest[i]
|
|
135
|
+
if arg == '--folder-name' and i + 1 < len(rest):
|
|
136
|
+
folder_name = rest[i + 1]
|
|
137
|
+
i += 1
|
|
138
|
+
elif arg == '--merged-name' and i + 1 < len(rest):
|
|
139
|
+
merged_name = rest[i + 1]
|
|
140
|
+
i += 1
|
|
141
|
+
elif not arg.startswith('--'):
|
|
142
|
+
paths.append(arg)
|
|
143
|
+
i += 1
|
|
144
|
+
cmd_upload(*paths, folder_name=folder_name, merged_name=merged_name)
|
|
145
|
+
|
|
146
|
+
else:
|
|
147
|
+
print(f"Unknown command: {cmd}")
|
|
148
|
+
print()
|
|
149
|
+
print_main_help()
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
if __name__ == '__main__':
|
|
153
|
+
main()
|