Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/guidofe/fortune-cat
Like the cow, but it's a cat (and has many more options)
https://github.com/guidofe/fortune-cat
bash bash-script cowsay fortune
Last synced: about 2 months ago
JSON representation
Like the cow, but it's a cat (and has many more options)
- Host: GitHub
- URL: https://github.com/guidofe/fortune-cat
- Owner: GuidoFe
- License: gpl-3.0
- Created: 2020-12-05T18:11:53.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2020-12-09T00:52:58.000Z (about 4 years ago)
- Last Synced: 2024-11-08T07:03:04.601Z (about 2 months ago)
- Topics: bash, bash-script, cowsay, fortune
- Language: Python
- Homepage:
- Size: 162 KB
- Stars: 21
- Watchers: 3
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Fortune Cat
Like the cow, but it's a cat (and has many more options). You can change the animal in a config file (to specify with -c) or with a dedicated file (-d).
Take a look [here](https://github.com/GuidoFe/bashCatWithKitten) if you would like to have a cat to decor your `cat` command.
## RequirementsPython 3.0+, necessary for a simpler unicode manipulation.
## How to install
Download the script manually, or run `pip3 install fortune-cat`
## Examples
![screen1](https://raw.githubusercontent.com/GuidoFe/fortune-cat/main/screen1.png)
![screen2](https://github.com/GuidoFe/fortune-cat/blob/main/screen2.png)
![screen3](https://raw.githubusercontent.com/GuidoFe/fortune-cat/main/screen3.png)## How to use
Be sure to have Python3 and to make the script executable (`chmod +x ./catfortune.py`)
You can use it
* With a pipe: `fortune | fortune-cat [OPTIONS]`
* With a string: `fortune-cat [OPTIONS] "Hello"`## Options
Usage: `fortune-cat OPTIONS [text]`
You can rename the file and/or remove the extension if you want
### File Options
| Command | Description |
|---------------------------|----------------------------------------------|
| `-d, --drawing-file FILE` | File with a custom cat/animal/thinghy |
| `-c, --config-file FILE` | Custom config file. |### Drawing Options
| Command | Description |
|-----------------------------|--------------------------------------------------------------------------------------------------------------|
| `-tl, --top-left STR` | Top left corner character |
| `-tr, --top-right STR` | Top right corner char |
| `-bl, --bottom-left STR` | Bottom left corner char |
| `-br, --bottom-right STR` | Bottom right corner char |
| `-l, --left STR` | Left box char |
| `-r, --right STR` | Right box char |
| `-t, --top STR` | Top box char |
| `-b, --bottom STR` | Bottom box char |
| `-p, --padding INT` | Vertical padding of the entire output |
| `-cp, --cat-position FLOAT` | Position from 0 to 1 of the cat relative to the box. 0 = all to the left, 1 = all to the right, 0.5 = center |
| `-gp, --global-position INT`| Position like --cat-position, but of the entire output relative to the terminal### Text Options
| Command | Description |
|-------------------------------|------------------------------------------------------------------------------------------------|
| `-tph, --text-padding-h INT` | Horizontal text padding |
| `-tpv, --text-padding-v INT` | Vertical text padding |
| `-tb, --tab-length INT` | How many spaces a tab in the input text should be. Default = 2 |
| `-mtl, --max-text-length INT` | Set a maximum length for the text. Default is 0, that means it will only adapt to the terminal |
### Other| Command | Description |
|-------------------|-------------------------------|
| `-h, --help` | Print a guide to the script |## Configuration files
### Drawing file
It's the file where you can create a custom cat. Specify its path with the option `-d`.
- The first line must be the number of characters of the longest line of the drawing.
- The orher lines are those of the drawing. **There must be `OUTPUT` as one of the lines**: it separates the top and the bottom part of the ASCII art.Example:
```
8
∧_∧
( ・ω・)
─∪────∪─
OUTPUT
━┯━━━━┯━
| |
| |
U U
```### Config File
Specify its path with `-c`. It contains the same arguments as the command line options. You must specify them in a single line.
You can optionally specify a custom drawing after the first line, with the same format as the drawing file. The latter will have precedence over the ASCII art in the config file.Example:
```
-tl ┌ -tph 3 -tpv 5 -l |
8
∧_∧
( -.-)
─∪────∪─
OUTPUT
━┯━━━━┯━
| |
| |
U U
```