diff options
Diffstat (limited to 'python-plover-startup-py.spec')
-rw-r--r-- | python-plover-startup-py.spec | 274 |
1 files changed, 274 insertions, 0 deletions
diff --git a/python-plover-startup-py.spec b/python-plover-startup-py.spec new file mode 100644 index 0000000..dd8c96e --- /dev/null +++ b/python-plover-startup-py.spec @@ -0,0 +1,274 @@ +%global _empty_manifest_terminate_build 0 +Name: python-plover-startup-py +Version: 0.2.0 +Release: 1 +Summary: Quick and dirty plugin to run something when Plover starts. +License: GNU General Public License v3 or later (GPLv3+) +URL: https://github.com/user202729/plover-startup-py +Source0: https://mirrors.aliyun.com/pypi/web/packages/b3/64/e5c9dd4af40b63c9ce26faf1ac403431a62022511394fe4ef63abfc9e461/plover_startup_py-0.2.0.tar.gz +BuildArch: noarch + +Requires: python3-plover + +%description +# plover-startup-py +Quick and dirty plugin to run something when Plover starts. + +### About plugin + +This plugin should only used for testing purposes. See also: + +* [user202729/plover-debugging-console: A IPython debugging console for Plover.](https://github.com/user202729/plover-debugging-console) +* [user202729/plover-run-py: Command plugin for Plover to run an arbitrary Python command.](https://github.com/user202729/plover-run-py) + +Disadvantages in comparison to writing an extension plugin: + +* Can only be used on a single machine. + + However, it should not be hard to convert a configuration file into an extension plugin to be distributed. + +Advantages over writing an extension plugin: + +* For testing purposes, the user-provided code might have some bug/errors. + + While using a normal extension plugin might make Plover nonfunctional (for example if `stop()` raises + an error, Plover quit will be interrupted), this module guarantees that Plover is never interrupted. + +* Has a reload command, which is faster than restarting Plover. + +* Some convenience functions to make hacks easier to achieve. + +### Installation + +The package can be installed from pip or GitHub. + +### Configuration + +You need to create a file named `plover_startup_py_config.py` in Plover's configuration folder +(see https://plover.readthedocs.io/en/latest/api/oslayer_config.html#plover.oslayer.config.CONFIG_DIR +for where it is exactly) + +The file may define (and register) functions `start` and `stop`: + +```python +@register_start +def start(): + pass + +@register_stop +def stop(): + pass +``` + +They will be called when the plugin starts/stops (which is normally when Plover starts/exits) + +The engine can be accessed as the global variable `engine`, and there are more convenience functions, +search for "convenience functions" in the source code for more details +(and to read their documentation). + +The last line in `load_file()` function in `plover_startup_py/__init__.py` file +have the complete list of global variables passed to the configuration file. + +### Usage + +Go to "Plugins" tab of Plover configuration, enable the plugin named "plover_startup_py". + +To view the full traceback/error messages, you may need to invoke Plover with `--log-level debug`. + +There's also an additional command `{plover:plover_startup_py_reload}` for reloading the module. + + + + +%package -n python3-plover-startup-py +Summary: Quick and dirty plugin to run something when Plover starts. +Provides: python-plover-startup-py +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-plover-startup-py +# plover-startup-py +Quick and dirty plugin to run something when Plover starts. + +### About plugin + +This plugin should only used for testing purposes. See also: + +* [user202729/plover-debugging-console: A IPython debugging console for Plover.](https://github.com/user202729/plover-debugging-console) +* [user202729/plover-run-py: Command plugin for Plover to run an arbitrary Python command.](https://github.com/user202729/plover-run-py) + +Disadvantages in comparison to writing an extension plugin: + +* Can only be used on a single machine. + + However, it should not be hard to convert a configuration file into an extension plugin to be distributed. + +Advantages over writing an extension plugin: + +* For testing purposes, the user-provided code might have some bug/errors. + + While using a normal extension plugin might make Plover nonfunctional (for example if `stop()` raises + an error, Plover quit will be interrupted), this module guarantees that Plover is never interrupted. + +* Has a reload command, which is faster than restarting Plover. + +* Some convenience functions to make hacks easier to achieve. + +### Installation + +The package can be installed from pip or GitHub. + +### Configuration + +You need to create a file named `plover_startup_py_config.py` in Plover's configuration folder +(see https://plover.readthedocs.io/en/latest/api/oslayer_config.html#plover.oslayer.config.CONFIG_DIR +for where it is exactly) + +The file may define (and register) functions `start` and `stop`: + +```python +@register_start +def start(): + pass + +@register_stop +def stop(): + pass +``` + +They will be called when the plugin starts/stops (which is normally when Plover starts/exits) + +The engine can be accessed as the global variable `engine`, and there are more convenience functions, +search for "convenience functions" in the source code for more details +(and to read their documentation). + +The last line in `load_file()` function in `plover_startup_py/__init__.py` file +have the complete list of global variables passed to the configuration file. + +### Usage + +Go to "Plugins" tab of Plover configuration, enable the plugin named "plover_startup_py". + +To view the full traceback/error messages, you may need to invoke Plover with `--log-level debug`. + +There's also an additional command `{plover:plover_startup_py_reload}` for reloading the module. + + + + +%package help +Summary: Development documents and examples for plover-startup-py +Provides: python3-plover-startup-py-doc +%description help +# plover-startup-py +Quick and dirty plugin to run something when Plover starts. + +### About plugin + +This plugin should only used for testing purposes. See also: + +* [user202729/plover-debugging-console: A IPython debugging console for Plover.](https://github.com/user202729/plover-debugging-console) +* [user202729/plover-run-py: Command plugin for Plover to run an arbitrary Python command.](https://github.com/user202729/plover-run-py) + +Disadvantages in comparison to writing an extension plugin: + +* Can only be used on a single machine. + + However, it should not be hard to convert a configuration file into an extension plugin to be distributed. + +Advantages over writing an extension plugin: + +* For testing purposes, the user-provided code might have some bug/errors. + + While using a normal extension plugin might make Plover nonfunctional (for example if `stop()` raises + an error, Plover quit will be interrupted), this module guarantees that Plover is never interrupted. + +* Has a reload command, which is faster than restarting Plover. + +* Some convenience functions to make hacks easier to achieve. + +### Installation + +The package can be installed from pip or GitHub. + +### Configuration + +You need to create a file named `plover_startup_py_config.py` in Plover's configuration folder +(see https://plover.readthedocs.io/en/latest/api/oslayer_config.html#plover.oslayer.config.CONFIG_DIR +for where it is exactly) + +The file may define (and register) functions `start` and `stop`: + +```python +@register_start +def start(): + pass + +@register_stop +def stop(): + pass +``` + +They will be called when the plugin starts/stops (which is normally when Plover starts/exits) + +The engine can be accessed as the global variable `engine`, and there are more convenience functions, +search for "convenience functions" in the source code for more details +(and to read their documentation). + +The last line in `load_file()` function in `plover_startup_py/__init__.py` file +have the complete list of global variables passed to the configuration file. + +### Usage + +Go to "Plugins" tab of Plover configuration, enable the plugin named "plover_startup_py". + +To view the full traceback/error messages, you may need to invoke Plover with `--log-level debug`. + +There's also an additional command `{plover:plover_startup_py_reload}` for reloading the module. + + + + +%prep +%autosetup -n plover_startup_py-0.2.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-plover-startup-py -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 0.2.0-1 +- Package Spec generated |