From 6cb7e25974b11afe57d7d0e8550b3b1a56b14c67 Mon Sep 17 00:00:00 2001 From: Kelly Brazil Date: Tue, 19 Apr 2022 13:17:24 -0400 Subject: [PATCH] add docs --- README.md | 1 + docs/parsers/git_log.md | 86 +++++++++++++++++++++++++++++++++++++++++ man/jc.1 | 7 +++- 3 files changed, 93 insertions(+), 1 deletion(-) create mode 100644 docs/parsers/git_log.md diff --git a/README.md b/README.md index 7db3c435..68559164 100644 --- a/README.md +++ b/README.md @@ -167,6 +167,7 @@ option. - `--finger` enables the `finger` command parser ([documentation](https://kellyjonbrazil.github.io/jc/docs/parsers/finger)) - `--free` enables the `free` command parser ([documentation](https://kellyjonbrazil.github.io/jc/docs/parsers/free)) - `--fstab` enables the `/etc/fstab` file parser ([documentation](https://kellyjonbrazil.github.io/jc/docs/parsers/fstab)) +- `--git-log` enables the `git log` command parser ([documentation](https://kellyjonbrazil.github.io/jc/docs/parsers/git_log)) - `--group` enables the `/etc/group` file parser ([documentation](https://kellyjonbrazil.github.io/jc/docs/parsers/group)) - `--gshadow` enables the `/etc/gshadow` file parser ([documentation](https://kellyjonbrazil.github.io/jc/docs/parsers/gshadow)) - `--hash` enables the `hash` command parser ([documentation](https://kellyjonbrazil.github.io/jc/docs/parsers/hash)) diff --git a/docs/parsers/git_log.md b/docs/parsers/git_log.md new file mode 100644 index 00000000..dc31aa7c --- /dev/null +++ b/docs/parsers/git_log.md @@ -0,0 +1,86 @@ +[Home](https://kellyjonbrazil.github.io/jc/) + + +# jc.parsers.git\_log + +jc - JSON Convert `git log` command output parser + +Can be used with the following format options: +- `oneline` +- `short` +- `medium` +- `full` +- `fuller` + +Additional options supported (work in progress): +- --stat +- --shortstat + +Usage (cli): + + $ git log | jc --git-log + + or + + $ jc git log + +Usage (module): + + import jc + result = jc.parse('git_log', git_log_command_output) + +Schema: + + [ + { + "commit": string, + "author": string, + "author_email": string, + "date": string, + "commit_by": string, + "commit_by_email": string, + "commit_by_date": string, + "message": string, + "stats" : { + "files_changed": integer, + "insertions": integer, + "deletions": integer, + "files": [ + string + ] + } + } + ] + +Examples: + + $ git-log | jc --git-log -p + [] + + $ git-log | jc --git-log -p -r + [] + + + +### parse + +```python +def parse(data: str, raw: bool = False, quiet: bool = False) -> List[Dict] +``` + +Main text parsing function + +Parameters: + + data: (string) text data to parse + raw: (boolean) unprocessed output if True + quiet: (boolean) suppress warning messages if True + +Returns: + + List of Dictionaries. Raw or processed structured data. + +### Parser Information +Compatibility: linux, darwin, cygwin, win32, aix, freebsd + +Version 1.0 by Kelly Brazil (kellyjonbrazil@gmail.com) diff --git a/man/jc.1 b/man/jc.1 index fc079e83..f0af7f1c 100644 --- a/man/jc.1 +++ b/man/jc.1 @@ -1,4 +1,4 @@ -.TH jc 1 2022-04-12 1.18.7 "JSON Convert" +.TH jc 1 2022-04-19 1.18.7 "JSON Convert" .SH NAME jc \- JSONifies the output of many CLI tools and file-types .SH SYNOPSIS @@ -137,6 +137,11 @@ CSV file streaming parser \fB--fstab\fP `/etc/fstab` file parser +.TP +.B +\fB--git-log\fP +`git log` command parser + .TP .B \fB--group\fP