You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
4 weeks ago | |
---|---|---|
src | 4 weeks ago | |
.gitignore | 4 months ago | |
Cargo.lock | 4 months ago | |
Cargo.toml | 4 months ago | |
README.md | 4 weeks ago | |
github-protest.md | 4 months ago |
README.md
Very much work in progress. This is the first project in my Rust learning journey. Expect a lot of changes and refactoring.
Colmap
Colmap is hybrid between awk
in xargs
. It borrows from the former its ability
to work on tabular columns of text and allows for arbitrary commands to be
applied per column in a similar way to xargs
.
The columns are called fields
. The command to execute on each field is called
an x-arg
.
Example
input:
field #1 field #2
|--------------------------| |--------------|
/long/path/to/some/ebook.pdf | Title Of Ebook
____
\
example usage: \
-------------- \__________________
___\_
colmap --field-1='basename {}' --field-2="awk { print $1 }"
_________________|: x-arg
#OR
colmap -f1 'basename {}' -f2 'awk { print $1 }'
would output: ebook.pdf | Title
- use colon as delimiter
colmap -d':' -f1 '...'
Ways of passing x-args
- passing column x-args as fields
foo_cmd | colmap --field-1='basename {}' --field-2="awk { print $1 }"
foo_cmd | colmap -f1 'basename {}' -f2 'awk { print $1 }'
- Passing an
xarg template
foo_cmd | colmap -t 'basename {}' 'awk { print $2 }'
I am using Github under protest
TODO:
[ ] use non-dashed approach to cli (rwxrob/bonzai)