Improved readme.
This commit is contained in:
parent
346afd61c0
commit
20bbe82b96
74
README.md
74
README.md
|
@ -1,19 +1,49 @@
|
|||
|
||||
# Pretty #
|
||||
|
||||
## Introduction
|
||||
|
||||
`pretty` is an advanced pretty printer for [Lua](lua.org) aiming primarily for
|
||||
human readability. It does this by looking for patterns in the input data, and
|
||||
creating an output string utilizing and highlighting those patterns. Thus it's
|
||||
a primarily a debugging tool, not a speedy serialization tool.
|
||||
|
||||
## Code Example
|
||||
|
||||
Setup is simple, just `pretty = require 'pretty'`, and you're good to go.
|
||||
|
||||
```lua
|
||||
> print(pretty( { 1, 2, 3 } ))
|
||||
{ 1, 2, 3 }
|
||||
|
||||
> print(pretty( { hello = 'world', num = 42 } ))
|
||||
{
|
||||
num = 42
|
||||
hello = 'world'
|
||||
}
|
||||
|
||||
> print(pretty( { abs = math.abs, max = math.max, some = function() end } ))
|
||||
{
|
||||
abs = builtin function (x) ... end
|
||||
max = builtin function (x, ...) ... end
|
||||
some = function () ... end
|
||||
}
|
||||
|
||||
> print(pretty( math.abs ))
|
||||
builtin function (x)
|
||||
-- math.abs
|
||||
-- Returns the absolute value of x
|
||||
|
||||
...
|
||||
end
|
||||
```
|
||||
|
||||
## Motivation
|
||||
|
||||
This project is the outcome of my frustration with existing pretty printers, and
|
||||
a desire to expand upon the pretty printer I developed for
|
||||
[Xenoterm](https://gitfub.space/takunomi/Xenoterm). The default Xenoterm pretty
|
||||
printer is much simpler than `pretty`, but the enhancements compared to other
|
||||
pretty printers, inspired me to create `pretty`. See the bottom of the page for
|
||||
other pretty printers.
|
||||
[Xenoterm](https://gitfub.space/takunomi/Xenoterm). The original Xenoterm pretty
|
||||
printer was much simpler than `pretty` - and the current is even simpler - but
|
||||
the enhancements I make, when compared to other pretty printers, inspired me to
|
||||
create `pretty`.
|
||||
|
||||
`pretty` sorts it's priorities like so:
|
||||
|
||||
|
@ -47,23 +77,17 @@ available.
|
|||
* Uses the standard `debug` library to gain information about functions
|
||||
and other advanced structures.
|
||||
|
||||
## Readability Methods
|
||||
## Installation
|
||||
|
||||
Here we outline the methods we use when formatting.
|
||||
TODO
|
||||
|
||||
The simplest method is to align keys, equals-sign and values, of a table. Thus
|
||||
we separate them, and make it easier to distinguish them from each. Compare:
|
||||
## API Documentation
|
||||
|
||||
```lua
|
||||
bad = {
|
||||
a = 'hello world',
|
||||
hello = 'hi'
|
||||
}
|
||||
good = {
|
||||
a = 'hello world',
|
||||
hello = 'hi'
|
||||
}
|
||||
```
|
||||
TODO
|
||||
|
||||
## Tests
|
||||
|
||||
TODO
|
||||
|
||||
## Performance
|
||||
|
||||
|
@ -118,3 +142,13 @@ options. Lua has a large library of pretty printers and serialization libraries:
|
|||
serialization.
|
||||
|
||||
Find others at [the lua-users wiki](lua-users.org/wiki/TableSerialization).
|
||||
|
||||
## Contact
|
||||
|
||||
The author is available at `jonjmaa (at) gmail.com`. Be sure to send an email if
|
||||
you have ideas for improvements, find an issue, or even an unintuitive result.
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the BeerWare license - Please see the
|
||||
TODO[LICENSE.txt][./LICENSE.txt] file for details.
|
||||
|
|
Loading…
Reference in New Issue
Block a user