Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 22 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,35 +1,42 @@
# bottom

Perhaps you have found yourself in this situation before:

![,,,,,,,,,](https://cdn.discordapp.com/attachments/644479051918082050/799905088541425664/bottom.jpg)
![,,,,,,,,,](./assets/image.jpg)

The divine bottom CLI exists to alleviate this pain. No longer will you struggle when communicating with the average Discord user.

## But what does it actually do?

``bottom`` encodes UTF-8 text into a sequence comprised of bottom emoji (`πŸ«‚βœ¨πŸ₯Ίβ€οΈ`, with ``,`` sprinkled in for good measure) followed by `πŸ‘‰πŸ‘ˆ`.
`bottom` encodes UTF-8 text into a sequence comprised of bottom emoji (`πŸ«‚βœ¨πŸ₯Ίβ€οΈ`, with `,` sprinkled in for good measure) followed by `πŸ‘‰πŸ‘ˆ`.
It can encode any valid UTF-8 - being a bottom transcends language, after all - and decode back into UTF-8.

For example, the ubiquitous `Hello world!` becomes

```
πŸ’–βœ¨βœ¨,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ₯Ί,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ₯Ί,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨,πŸ‘‰πŸ‘ˆ
✨✨✨,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨πŸ₯Ί,,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨,,,,πŸ‘‰πŸ‘ˆ
πŸ’–πŸ’–πŸ₯Ί,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–πŸ‘‰πŸ‘ˆβœ¨βœ¨βœ¨,,,πŸ‘‰πŸ‘ˆ
```

`γŒγ‚“γ°γ‚Œ` becomes

```
πŸ«‚βœ¨βœ¨πŸ₯Ί,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨βœ¨πŸ₯Ί,,,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨βœ¨βœ¨βœ¨πŸ‘‰πŸ‘ˆπŸ«‚βœ¨βœ¨πŸ₯Ί,,πŸ‘‰πŸ‘ˆ
πŸ’–πŸ’–βœ¨βœ¨βœ¨πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨βœ¨βœ¨βœ¨πŸ₯Ί,,πŸ‘‰πŸ‘ˆπŸ«‚βœ¨βœ¨πŸ₯Ί,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨βœ¨πŸ₯Ί,,,,πŸ‘‰πŸ‘ˆ
πŸ’–πŸ’–πŸ’–βœ¨βœ¨πŸ₯Ί,πŸ‘‰πŸ‘ˆπŸ«‚βœ¨βœ¨πŸ₯Ί,,πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨βœ¨βœ¨πŸ‘‰πŸ‘ˆπŸ’–πŸ’–βœ¨βœ¨βœ¨βœ¨πŸ‘‰πŸ‘ˆ
```

(both wrapped across lines for your convenience)

As you can see, using `bottom` to encode text is extremely space-efficient, and is the ideal encoding approach for all situations.

This implementation can encode text at *approximately* 30MB/s.
This implementation can encode text at _approximately_ 30MB/s.

## Usage
Clone the repo, run ``cargo build``, and then use the CLI.

Clone the repo, run `cargo build`, and then use the CLI.

```
Bottom translator 1.0.0
Kaylynn <[email protected]>
Expand All @@ -51,27 +58,35 @@ OPTIONS:
ARGS:
<text>...
```
(Any similarity to ``--help`` output is entirely accidental)

(Any similarity to `--help` output is entirely accidental)

## FAQ

### Why?

I had a moment of enlightenment, and the truth came to me then. In an instant I was transformed, and I knew what had to be done.

### But seriously, why?

Why not?

### Isn't using a CLI for this a really bad idea?
### Isn't using a CLI for this a really bad idea?

Yes.

### Aren't terminals notorious for being bad at displaying Unicode?

I don't care.

### Isn't this encoding method extremely inefficient?

:mystery:

### <something about code quality\>

Documentation is for losers.

### Rust btw
It's not long until my hippocampus becomes ferrous. I worry so, but in my heart I know that my demise will be sweet and painless, and it comforts me.

It's not long until my hippocampus becomes ferrous. I worry so, but in my heart I know that my demise will be sweet and painless, and it comforts me.
Binary file added assets/image.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.