Overview
| Artifact ID: | f4c9b0c9dc430d2b32c7b456a747f7de1b077f3cc28d6b69a370f7617c06f968 |
|---|---|
| Page Name: | pluginconf |
| Date: | 2022-11-01 18:05:03 |
| Original User: | mario |
| Mimetype: | text/x-markdown |
| Parent: | 3e4d9074a242b326a3ee59e8aa5c5d8761e3a8a05489908da586d84110d4c32a (diff) |
| Next | fa261911f4aa3c0d916b87e535c806b63f122402a157327a52f6e8ccf66c010b |
Content
pluginconf
Is a Python implementation of PMD.
| proejct | info |
|---|---|
| Repo | /tree/pluginconf/ |
| API docs | /doc/trunk/html/ |
| pypi | https://pypi.org/project/pluginconf/ |
| depends | re, pysimplegui, setuptools, flit |
| compat | Python ≥2.7, |
| compliancy | pep8, !man, !doap, self |
| system usage | - |
| permissive | 0.75 |
| testing | 0.5 |
| activity | infreq |
| state | stable |
| support | |
| contrib | mail, fossil |
| announce | - |
It originated in streamtuner2. But has since gained some config dialog implementation of its own (for modseccfg and other small tools). Simplifies configuration management, and has a pretty terse API.
- Only supports Python
#comments. - Works from within pyz/zip packages.
- Additionally wraps setup() and flit package builds.
sample
# api: python
# title: example
# description: shows plugin_meta() reading
##type: main
# version: 0.1
#
# Imagine this being a real Python script.
import pluginconf
meta = pluginconf.plugin_meta(filename=__file__)
print(meta.title)
pluginconf.plugin_base = ["plugins", "contrib"]
print(pluginconf.all_plugin_meta())
There's also a simplified interface now (pluginconf.bind) for most common use cases. Though of course it makes most sense if there are actual script/extension downloads.
The double-escaped ##type: is a concession to pylint. It's not actually
required, espcially if #category: or #class: could alternatively be
used for extension grouping.