Planned version to be in the style of Rust CLI tools like ripgrep,
zoxide, and fd. A generic xents
command will be used here
as an example implementation.
Usage:
xents <command> <operator> <arguments>
ENTS commands use inverse function mapping - one to many, not many to one. This is chosen so the first argument of one type can have many arguments (that are of a different type than the first and are all of a similar type) after it
process
Takes a YAML file and processes it to a datafile. Output varies on imlementation.
- Usage:
xents process file.yaml
- Notes: no additional operators or arguments
- Alias:
parse
tagtofiles
Usage:
xents tagtofiles <add|remove> <arguments>*
Description: Manages relationships between one tag and many files
Alias: ttf
add
- Usage:
xents tagtofiles add <tag> <files>*
- Description: creates links from one tag to 1 files
- Alias:
assign
- Usage:
remove
- Usage:
xents tagtofiles remove <tag> <files>*
- Description: removes a link one from one tag to 1 files
- Alias:
rm
- Usage:
filetotags
Usage:
xents filetotags <add|remove> <arguments>*
Description: Manages relationships between one file and many tags
Alias: ftt
add
- Usage:
xents filetotags add <file> <tags>*
- Description: creates links from one file to 1 tags
- Alias:
assign
- Usage:
remove
- Usage:
xents filetotags remove <file> <tags>*
- Description: removes links from one file to 1 tags
- Alias:
rm
- Usage:
filter
Usage: xents filter [-flags] <tags>*
Description: Returns files associated with tags. The main command of
XENTS, where the nesting comes into play. Differentiated from the
tagtofiles
command, where the nesting does not come into
play.