https://github.com/ern0/rsvw
Simple RSV (Rows of String Values) viewer CLI app
https://github.com/ern0/rsvw
Last synced: 10 months ago
JSON representation
Simple RSV (Rows of String Values) viewer CLI app
- Host: GitHub
- URL: https://github.com/ern0/rsvw
- Owner: ern0
- License: mit
- Created: 2024-01-13T10:56:53.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-01-15T20:21:33.000Z (almost 2 years ago)
- Last Synced: 2024-01-16T01:28:59.578Z (almost 2 years ago)
- Language: Rust
- Homepage:
- Size: 22.5 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# rsvw - RSV viewer
## What is `rsvw`?
This simple CLI utility
converts
RSV (Rows of String Values) files
to human readable format.
## What is RSV?
RSV is a schemeless text-based data transport format,
very similar to CSV, but with binary separator characters,
so there's no quotation marks, no escaping at all.
Easy to create, easy to read,
payload can be any UTF-8 character.
For more info and examples,
see the [specification](https://github.com/Stenway/RSV-Specification).
## Usage
If any files are specified,
the program concatenates them,
if not, it uses `stdin` (piping support).
```
rsvw 1.0.0 - RSV viewer - https://github.com/ern0/rsvw"
Usage: rsvw [options] [files]...
Options:
-n, --null-value default: "null"
-f, --field-separator default: "|"
-o, --field-opening default: "<"
-c, --field-closing default: ">"
-s, --line-starting default: "["
-e, --line-ending default: "]"
-h, --help
How to set empty string value to an option:
rsvw -f'' -- example.rsv
```
The empty string (`''`) is unnecessary,
but it's easier to understand.
## Build and install
You will need [Rust compiler installed](https://www.rust-lang.org/learn/get-started).
Build:
```
$ cargo build --release
(...)
```
Install:
```
$ sudo cp target/release/rsvw /usr/local/bin
```
## Plans
There's no such as final version of a software.
### Make ASCII input support optional
Now, this utility omits all CR characters,
and takes LFs as end-of-line.
Probably, this is a bad behaviour,
these characters may appear in the payload.
Solution: add command line switch to
interpret CR and LF characters as data.
### Make ASCII output optional
Now the program prints LF after each line,
regardless of *line ending* parameter's value.
Solution: make it switchable.
### Use configuration file
Delimiter characters
should be read
from a user preference file,
e.g. `~/.rsvw-rc`.
## Authors
- [ern0](https://github.com/ern0/rsvw) (original)
- [H2CO3](https://github.com/H2CO3) (refactor)