Skip to main content

CLI for prettifying XML

Project description

prettify-xml

License: GPL v3 Python Versions Style Black Documentation Status status-badge

Why

Pretty xml output is necessary for debugging xml-based communications and other operations involving XML

What

It is a simple command-line application formatting XML files written in Python

Usage

xml-formatter -i sample.xml -o formatted_test.xml

Installation

Production Build

pip install xml-formatter

Dev Build

Linux

Run with one of the follwing:

bash install.sh
./install.sh
sh install.sh

Windows

Double click on install.bat or run

install.bat

Usage

python .\xml-format.py -i .\sample.xml -o formatted_test.xml

Register a shell command

The section is about registering shell commands using the Click library. Maybe you are curious, about crafting your own OS? Go for it! I do it and it is a lot of fun :)

The best way to have a system wide executable command on both, Windows and Linux systems is to use setuputools.

There is a description in the click package about how to do it

In a nutshell, the setup.py file has to follow a certain pattern, e.g.

from setuptools import setup, find_packages

setup(
    name='prettify_xml',
    version='0.4.3',
    packages=find_packages(),
    include_package_data=True,
    install_requires=[
        'Click',
    ],
    entry_points={
        'console_scripts': [
            'formatter = prettify_xml.formatter:format',
        ],
    },
)

Then, you can run on Windows:

python -m venv venv 
venv/Scripts/activate
pip install --editable .

And on Linux you can run:

python -m venv venv 
source venv/bin/activate
pip install --editable .

Then, test the application with:

xml-formatter -i sample.xml -o formatted_test.xml

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

prettify-xml-0.4.5.tar.gz (14.9 kB view hashes)

Uploaded Source

Built Distribution

prettify_xml-0.4.5-py3-none-any.whl (15.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page