#!/usr/bin/fish #TODO: Maybe do this in D (at compile time) instead? function extractFields set name $argv[1] set firstColumn $argv[2] set secondColumn $argv[3] # For some tables (e.g. masterStage), commas aren't allowed even in quoted strings (though the Nutaku version handles them just fine) csvquote | cut -d, -f $firstColumn,$secondColumn | sed "s/\"/\\\\\"/g;s/\(.*\),\(.*\)/$name\[\1\] = \"\2\";/;s/\x1F/、/g" end function extractCsv set table $argv[1] jq -r '.master'$table nutakuMaster.json | base64 -d end extractCsv 'Character' | extractFields 'characterNames' 1 6 > data/characterNames.data.d extractCsv 'CharacterSkill' | extractFields 'skillNames' 1 2 > data/skillNames.data.d extractCsv 'CharacterSkill' | extractFields 'skillDescriptions' 1 7 > data/skillDescriptions.data.d extractCsv 'Stage' | extractFields 'stageNames' 1 2 > data/stageNames.data.d extractCsv 'Mission' | extractFields 'missionNames' 1 2 > data/missionNames.data.d extractCsv 'Mission' | extractFields 'missionDescriptions' 1 3 > data/missionDescriptions.data.d extractCsv 'Mission' | extractFields 'missionRewards' 1 4 > data/missionRewards.data.d extractCsv 'Dungeon' | extractFields 'dungeonNames' 10 12 > data/dungeonNames.data.d extractCsv 'Guest' | extractFields 'guestPartyNames' 1 2 > data/guestPartyNames.data.d