diff --git a/src/data/scripts/pipeline.sh b/src/data/scripts/pipeline.sh index ebedbef..a5d8446 100755 --- a/src/data/scripts/pipeline.sh +++ b/src/data/scripts/pipeline.sh @@ -1,10 +1,10 @@ #!/bin/bash cd ../processing -jq -r '. | select((.pos=="noun") or (.pos=="verb") or (.pos=="adj") or (.pos=="adv")) | select((.word | test("[^a-z]"))|not) | {word: .word, type: .pos, pronunciation: .sounds[0].ipa, definitions: (try .senses|map(.glosses|join(" ")))}' \ +jq -r '. | select((.pos=="noun") or (.pos=="verb") or (.pos=="adj") or (.pos=="adv")) | select((.word | test("[^a-z]"))|not) | {word: .word, type: .pos, pronunciation: .sounds[0].ipa, definitions: (try .senses|map({definition: .glosses|join(" "), form_of: (.form_of!=null)}))}' \ wiktionary.json > wiktionary-p1.json -jq --slurp '. | group_by(.word)[] | {word:.[0].word, pronunciation:.[0].pronunciation, meanings:[.[]|{type:.type, form_of:(try .form_of), definitions:[try .definitions[]]| select(.!=[]) |map({(.):1})|add|keys_unsorted}]}' \ +jq --slurp '. | group_by(.word)[] | {word:.[0].word, pronunciation:.[0].pronunciation, meanings:([.[]|{type:.type, definitions:[try .definitions][]}] |group_by(.type)|[{type: .[][0].type, definitions:[.[][].definitions[]] }] )}' \ wiktionary-p1.json > wiktionary-p2.json jq --slurp '.' wiktionary-p2.json > wiktionary-p3.json