Skip to main content

Fart all over your documentation

Project description

          _____                    _____                    _____                _____
         /\    \                  /\    \                  /\    \              /\    \
        /::\    \                /::\    \                /::\    \            /::\    \
       /::::\    \              /::::\    \              /::::\    \           \:::\    \
      /::::::\    \            /::::::\    \            /::::::\    \           \:::\    \
     /:::/\:::\    \          /:::/\:::\    \          /:::/\:::\    \           \:::\    \
    /:::/__\:::\    \        /:::/__\:::\    \        /:::/__\:::\    \           \:::\    \
   /::::\   \:::\    \      /::::\   \:::\    \      /::::\   \:::\    \          /::::\    \
  /::::::\   \:::\    \    /::::::\   \:::\    \    /::::::\   \:::\    \        /::::::\    \
 /:::/\:::\   \:::\    \  /:::/\:::\   \:::\    \  /:::/\:::\   \:::\____\      /:::/\:::\    \
/:::/  \:::\   \:::\____\/:::/  \:::\   \:::\____\/:::/  \:::\   \:::|    |    /:::/  \:::\____\
\::/    \:::\   \::/    /\::/    \:::\  /:::/    /\::/   |::::\  /:::|____|   /:::/    \::/    /
 \/____/ \:::\   \/____/  \/____/ \:::\/:::/    /  \/____|:::::\/:::/    /   /:::/    / \/____/
          \:::\    \               \::::::/    /         |:::::::::/    /   /:::/    /
           \:::\____\               \::::/    /          |::|\::::/    /   /:::/    /
            \::/    /               /:::/    /           |::| \::/____/    \::/    /
             \/____/               /:::/    /            |::|  ~|           \/____/
   __                _            /:::/    /             |::|   |
  / _|  __ _   _ _  | |_         /:::/    /              \::|   |
 |  _| / _` | | '_| |  _|        \::/    /                \:|   |
 |_|   \__,_| |_|    \__|         \/____/                  \|___|

    ,...
  .d' ""                    mm         ,dPYb,                           I8
  dM`                       MM         IP'`Yb                           I8
 mMMmm   ,6"Yb.  `7Mb,od8 mmMMmm       I8  8I                        88888888
  MM    8)   MM    MM' "'   MM         I8  8'                           I8
  MM     ,pm9MM    MM       MM         I8 dP     ,gggg,gg   ,gggggg,    I8
  MM    8M   MM    MM       MM         I8dP     dP"  "Y8I   dP""""8I    I8
.JMML.  `Moo9^Yo..JMML.     `Mbmo      I8P     i8'    ,8I  ,8'    8I   ,I8,
                                      ,d8b,_  ,d8,   ,d8b,,dP     Y8, ,d88b,
                                      PI8"8888P"Y8888P"`Y88P      `Y888P""Y88
 _______  _______  ______    _______  I8 `8,
|       ||   _   ||    _ |  |       | I8  `8,       ___       __  ___
|    ___||  |_|  ||   | ||  |_     _| I8   8I      |__   /\  |__)  |
|   |___ |       ||   |_||_   |   |   I8   8I      |    /~~\ |  \  |
|    ___||       ||    __  |  |   |   I8, ,8'
|   |    |   _   ||   |  | |  |   |    "Y8P'
|___|    |__| |__||___|  |_|  |___|

         _               _                   _             _
        /\ \            / /\                /\ \          /\ \
       /  \ \          / /  \              /  \ \         \_\ \
      / /\ \ \        / / /\ \            / /\ \ \        /\__ \
     / / /\ \_\      / / /\ \ \          / / /\ \_\      / /_ \ \
    / /_/_ \/_/     / / /  \ \ \        / / /_/ / /     / / /\ \ \
   / /____/\       / / /___/ /\ \      / / /__\/ /     / / /  \/_/
  / /\____\/      / / /_____/ /\ \    / / /_____/     / / /
 / / /           / /_________/\ \ \  / / /\ \ \      / / /
/ / /           / / /_       __\ \_\/ / /  \ \ \    /_/ /
\/_/            \_\___\     /____/_/\/_/    \_\/    \_\/

 # ---------------------------------  fart!  --------------------------------- #
Latest PyPI version

Make text banners to visually divide segments in your code with fart.

What’s a fart?

//-----------------------------------------------------------------------------//
//                               This is a fart.                               //
//-----------------------------------------------------------------------------//


#=============================================================================#
#              ____              _           _     _       _                  #
#             / ___|    ___     (_)  ___    | |_  | |__   (_)  ___            #
#             \___ \   / _ \    | | / __|   | __| | '_ \  | | / __|           #
#              ___) | | (_) |   | | \__ \   | |_  | | | | | | \__ \           #
#             |____/   \___/    |_| |___/    \__| |_| |_| |_| |___/           #
#                                                                             #
#=============================================================================#

Fart is short for Figlet ART. This program is very similar to Figlet, and most fonts are borrowed from from it. Fart is focused on making text banners for use in code documentation.

As such, all generated text is encapsulated by commenting characters and copied to clipboard, so you can easily paste your fart into your code.

Usage

There are two types of farts currently supported:

$ fart text-box style

#=============================================================================#
#                                text-box style                               #
#=============================================================================#

$ fart -o one-line text-box style

#=========================  one-line text-box style  =========================#

and…

$ fart --font big figlet style

#=============================================================================#
#        __   _           _          _             _             _            #
#       / _| (_)         | |        | |           | |           | |           #
#      | |_   _    __ _  | |   ___  | |_     ___  | |_   _   _  | |   ___     #
#      |  _| | |  / _` | | |  / _ \ | __|   / __| | __| | | | | | |  / _ \    #
#      | |   | | | (_| | | | |  __/ | |_    \__ \ | |_  | |_| | | | |  __/    #
#      |_|   |_|  \__, | |_|  \___|  \__|   |___/  \__|  \__, | |_|  \___|    #
#                  __/ |                                  __/ |               #
#                 |___/                                  |___/                #
#                                                                             #
#=============================================================================#

You can specify which characters to use for the commenting char (“cap”) and line char (“line”). For example:

$ fart C++ -f georgia11 -c // -l '#'

//#############################################################################//
//                                                                             //
//                         .g8"""bgd                                           //
//                       .dP'     `M                                           //
//                       dM'       `     M         M                           //
//                       MM              M         M                           //
//                       MM.         mmmmMmmmm mmmmMmmmm                       //
//                       `Mb.     ,'     M         M                           //
//                         `"bmmmd'      M         M                           //
//                                                                             //
//#############################################################################//

You can also optionally pad the inside of “cap” char with a space, as it ‘space following a comment char’ is a common linting rule and will ruin your farts.

If you can’t fart around your linter due to this rule, this is the option for you!

Specify the -p --pad-caps option:

$ fart -p -f small Nice try Black!

# =============================================================================== #
#    _  _   _                _                    ___   _               _     _   #
#   | \| | (_)  __   ___    | |_   _ _   _  _    | _ ) | |  __ _   __  | |__ | |  #
#   | .` | | | / _| / -_)   |  _| | '_| | || |   | _ \ | | / _` | / _| | / / |_|  #
#   |_|\_| |_| \__| \___|    \__| |_|    \_, |   |___/ |_| \__,_| \__| |_\_\ (_)  #
#                                        |__/                                     #
#                                                                                 #
# =============================================================================== #

Farts are automatically copied to your clipboard for convenience. To disable this functionality, make sure to flag your farts with -n.

To see all available fonts and their supported character-sets, enter fart -s or fart --sample.

Installation

Install through pip:

pip install fart

Requirements

This package was built for use in Python 3 in Linux. I expect this package should work for other environments, but no support for other OS is planned.

Acknowledgements

FIGlet fonts are licensed under the BSD-3 by the original authors at http://www.figlet.org.

This package also uses pyperclip code to copy farts to the clipboard.

Big thanks to the members of the Laboratory of Plasma Physics (LPP) who were the original farters on PyPi with Find All Roots with a Tree, but graciously allowed me fart on PyPi.

License

Code is licensed under BSD-3 and any font assets are copyright by original authors.

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

fart-0.2.3.tar.gz (71.8 kB view details)

Uploaded Source

Built Distribution

fart-0.2.3-py3-none-any.whl (75.8 kB view details)

Uploaded Python 3

File details

Details for the file fart-0.2.3.tar.gz.

File metadata

  • Download URL: fart-0.2.3.tar.gz
  • Upload date:
  • Size: 71.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for fart-0.2.3.tar.gz
Algorithm Hash digest
SHA256 84186d3568e7e9c2b767694f0f9401bf6711de8638fc68244bc840664494221f
MD5 a470b5a6190868eef37601a5b0732f73
BLAKE2b-256 52bce4546a8c5820e76e2a6589036b0c3371cd3cfbfb95c41b456606312863bd

See more details on using hashes here.

File details

Details for the file fart-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: fart-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 75.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for fart-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 84f569689caa8125ef67b4aa7e84933907cc2889a4999f7806a01e4badc8c8df
MD5 efa99e47adf52aea0fa8338cd64dd1d1
BLAKE2b-256 f4fecf970047f1f9000ca63266f1fc91834941f7523153c2f680f63210393af8

See more details on using hashes here.

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