Python extensions for Inkscape core, separated out from main repository.
Project description
Inkscape Extensions
This folder contains the stock Inkscape extensions, i.e. the scripts that implement some commands that you can use from within Inkscape. Most of these commands are in the Extensions menu.
Installation
These scripts should be installed with an Inkscape package already (if you have installed Inkscape). For packagers or people testing newer releases, you can install the files into /usr/share/inkscape/extensions or ~/.config/inkscape/extensions .
Testing
These extensions are designed to have good test coverage for python 3.6 and above.
You must install the program pytest
in order to run these tests. You may run all tests by omitting any other parameters or select tests by adding the test filename that you want to run.
pytest
pytest tests/test_my_extension.py
See TESTING.md for further details.
Extension description
Each *.inx file describes an extension, listing its name, purpose, prerequisites, location within the menu, etc. These files are read by Inkscape on launch. Other files are the scripts themselves (Perl, Python, and Ruby are supported, as well as shell scripts).
Development
Development of both the core inkex modules, tests and each of the extensions contained within the core inkscape extensions repository should follow these basic rules of quality assurance:
- Use python3.6 or later, no python2 code would be used here.
- Use pylint to ensure code is written consistantly
- Have tests so that each line of an extension is covered in the coverage report
- Not cross streams between extensions, so your extension should import from a module and not from another extension.
- Use translations on text for display to users using get text.
- Should not require external programs to work (with some exceptions)
Also join the community on chat.inkscape.org channel #inkscape_extensions with any doubts or problems.
Building Docs
You may wish to compile to docs for use outside of the Inkscape docs, this can be done with these commands:
sphinx-apidoc -F -o source inkex
./setup.py build_sphinx -s source
firefox ./build/sphinx/html/inkex.html
All documentation should be included INSIDE of each python module.
The latest documentation for master branch can be found at https://inkscape.gitlab.io/extensions/documentation/.
License Requirements
Only include extensions here which are GPL-compatible. This includes Apache-2, MPL 1.1, certain Creative Commons licenses, and more. See https://www.gnu.org/licenses/license-list.html for guidance.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file inkex-1.2.2.tar.gz
.
File metadata
- Download URL: inkex-1.2.2.tar.gz
- Upload date:
- Size: 147.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a7f5e13a42e1bf456ce910d26d4492983b7724ada7edf82ad254442daa96de6 |
|
MD5 | 8a7d1a5f671850b831fbf13a9626ff38 |
|
BLAKE2b-256 | adf7fc8248626e558cdb4e3bcbae0c8985c49eea8695b13888f690abe775919b |
File details
Details for the file inkex-1.2.2-py3-none-any.whl
.
File metadata
- Download URL: inkex-1.2.2-py3-none-any.whl
- Upload date:
- Size: 186.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd6ff77ae73e86158accc5c0ea73d4c76b8e9e3d8d517b507b8171a7092cfe71 |
|
MD5 | 35d61d958637c51ef9cca38046348fca |
|
BLAKE2b-256 | c1ad9fb0f21c23e6b129d51a99185d557ac9a360a398e1f964dcf2ec4e079bf5 |