Skip to main content

A python script to exhibit your ascii arts and sytem specs

Project description

XHIBIT

Exhibit your ASCII art and system specs

INSTALLATION

Add Path

Example to add ~/.local/bin/ in the PATH Variable

POSIX based shell (bash,zsh,dash,....)

Change bashrc to your repective shell's rc

echo 'export PATH=~/.local/bin:$PATH' >> $HOME/.bashrc

Fish shell

echo 'set PATH ~/.local/bin/ $PATH' >> $HOME/.config/fish/config.fish
Install Python Package
pip install xhibit

Dependencies

For Ascii art only

  • python 3.5+

For Image display

  • kitty terminal or ueberzug
  • xorg-xdpyinfo
  • xdotool
  • xorg-xprop
  • xorg-xwininfo

How To Use

usage: xhibit [-h] [-cs CS] [-rcs RCS] [-ccs CCS] [-cn CN] [-rcn RCN] [-cpu CPU] [-gpu GPU] [-img IMG] [-imb IMB] [-crop CROP]

options:
  -h, --help  show this help message and exit
  -cs CS      Colorscheme to display.
  -rcs RCS    Randomize Colorschemes [t or f].
  -ccs CCS    Give custom colorschemem of 8 colors like this "#BF616A,#A3BE8C,#EBCB8B,#81A1C1,#B48EAD,#88C0D0,#E5E9F0,#B48EAD".
  -cn CN      Specify Character name [monalisa,egyptian,fairy,casper,dragon].
  -rcn RCN    Randomize Characters [t or f].
  -cpu CPU    Mention Cpu [Custom Cpu name].
  -gpu GPU    Mention Gpu [Custom Gpu name].
  -img IMG    Image path.
  -imb IMB    Mention Image backend [kitty or ueberzug].
  -crop CROP  Mention crop type [fit or fill].

ASCII characters

ASCII Characters available

  • monalisa
  • egyptian
  • casper
  • fairy
  • dragon

Default colorschemes

  • gruvbox
  • dracula

Extra Colorscheme List present inside this program

Colorscheme list

Example commands

To Choose gruvbox Colorscheme and casper

xhibit -cs gruvbox -cn casper

example2

To Choose dracula Colorscheme and fairy

xhibit -cs dracula -cn fairy

example3

To randomize colorscheme and character

xhibit -rcs t -rcn t

example4

Pick colorscheme

Check Colorscheme list

xhibit -cs "Eighties.dark" -cn dragon

example4

To give custom user colors

You can give custom user colors to xhibit to display text. Must give all the 8 colors in hex format just as shown below. Nord Colorscheme colors are used below as example.

xhibit -ccs "#BF616A,#A3BE8C,#EBCB8B,#81A1C1,#B48EAD,#88C0D0,#E5E9F0,#B48EAD"

example0

DOWNLOAD ALL THE THEMES AND SEE WITH FZF

Note : FZF Required

git clone https://github.com/glowfi/xhibit-colorschemes
mv ~/xhibit-colorschemes/themes ~/.cache
rm -rf xhibit-colorschemes
ls ~/.cache/themes| fzf | xargs -I {} cat ~/.cache/themes/{} | xargs | tr " " "," | xargs -I {} xhibit -rcn t  -ccs "{}"

Try all colorscheme in 1 second interval

wget https://raw.githubusercontent.com/glowfi/xhibit-colorschemes/main/run.sh -O ~/.cache/xhibitCol.sh
sh ~/.cache/xhibitCol.sh

Image support with ueberzug or kitty terminal.

xhibit -img "path/to/image/file" -imb "kitty"

                or

xhibit -img "path/to/image/file" -imb "ueberzug"

Install ueberzug guide

The original ueberzug project has been abandoned by its original author. But there are some people who are continuing its legacy. You can install ueberzug by using the below commands. I know projects like ueberzugpp exists but for now my project supports only kitty and ueberzug backend to display images.

git clone https://github.com/ueber-devel/ueberzug;
cd ueberzug/
pip install .
cd ..
rm -rf ueberzug

Image crop fit or fill

xhibit -img "path/to/image/file" -imb "kitty" -crop "fit"
xhibit -img "path/to/image/file" -imb "kitty" -crop "fill"

                or

xhibit -img "path/to/image/file" -imb "ueberzug" -crop "fit"
xhibit -img "path/to/image/file" -imb "ueberzug" -crop "fill"

example1

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

xhibit-9.8.6.tar.gz (36.8 kB view hashes)

Uploaded Source

Built Distribution

xhibit-9.8.6-py3-none-any.whl (37.6 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