Skip to main content

Python beautifier tcp server

Project description

PyBeautifier

Python beautifier tcp server based on autopep8, yapf, isort.
Only suport Unix-like system and python3.3+ currently.

Why

Before this, I use atom-beautify to format my code, but it's too slow(about 3 seconds) because every format operation will create a new python process.

So I write the beautifier server in python and beautifier client in node.js, they communicate by tcp socket. It's performance is much better(about 300 ms).

Install

$ pip install pybeautifier

Besides, you should install one or more of autopep8, yapf, isort based on your needs.

Usage

$ pybeautifier       # front ground process
$ pybeautifier -d    # daemon process, logging to /tmp/pybeautifier.log

It will start listening to tcp://${BEAUTIFIER_HOST}:${BEAUTIFIER_PORT}.

Env variables:

BEAUTIFIER_HOST - IP address or hostname (Default: 127.0.0.1)
BEAUTIFIER_PORT - Port number (Default: 36805)

Start at boot via systemd(Ubuntu16 or Arch Linux):

$ wget https://raw.githubusercontent.com/guyskk/pybeautifier/master/pybeautifier.service
$ cp pybeautifier.service /usr/lib/systemd/system/
$ systemctl start pybeautifier
$ systemctl enable pybeautifier

Protocol

Request(JSON):

{
    'data': 'text_need_format',
    'formaters': [
        {
            'name': 'formater_name',
            'config': {}  # None or dict
        },
        ... # formaters
    ]
}

Response(JSON):

{
    'error': 'error message',
    'data': 'formated text'
}

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

pybeautifier-0.1.2.tar.gz (4.3 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page