prosegrinder / python-prosegrinder

A relatively fast, functional prose text counter with readability scoring.
GNU General Public License v3.0
3 stars 2 forks source link

Automation support #13

Open yvlcmb opened 2 years ago

yvlcmb commented 2 years ago

I would like to use prosegrinder in a version control system for managing prose, perhaps in a git hook or a GitHub Action so that it runs automatically on each new commit. To make this happen, perhaps prosegrinder needs some command line usage support or some other top level module that can be executable from the command line.

davidlday commented 2 years ago

Adding a few thoughts on what needs to happen:

davidlday commented 2 years ago

@slingload - if you have time, can you test out the cli branch? Let me know if it's along the lines of what you were thinking. I kept the output to a minimum.

yvlcmb commented 2 years ago

@slingload - if you have time, can you test out the cli branch? Let me know if it's along the lines of what you were thinking. I kept the output to a minimum.

Thanks David it looks great, this is just what I was hoping for: pg_cli

I appreciate you adding this in and extra kudos for the quick turn around.

davidlday commented 2 years ago

@slingload - heads up. I'll be putting out a new version later this morning and the cli output will be altered a little to be like this:

{
  "filename": "shortstory.txt",
  "statistics": {
    "sha256": "5b756dea7c7f0088ff3692e402466af7f4fc493fa357c1ae959fa4493943fc03",
    "word_character_count": 7008,
    "phone_count": 5747,
    "syllable_count": 2287,
    "word_count": 1528,
    "sentence_count": 90,
    "paragraph_count": 77,
    "complex_word_count": 202,
    "long_word_count": 275,
    "pov_word_count": 113,
    "first_person_word_count": 8,
    "second_person_word_count": 74,
    "third_person_word_count": 31,
    "pov": "first",
    "readability_scores": {
      "automated_readability_index": 0.281,
      "coleman_liau_index": 9.425,
      "flesch_kincaid_grade_level": 8.693,
      "flesch_reading_ease": 62.979,
      "gunning_fog_index": 12.079,
      "linsear_write": 10.733,
      "lix": 34.975,
      "rix": 3.056,
      "smog": 11.688
    }
  }
}