25 lines
825 B
Python
25 lines
825 B
Python
|
#!/usr/bin/env nix-shell
|
||
|
#!nix-shell -i python3 -p python3
|
||
|
# I want to use Anki instead of Quizlet. However, Quizlet only provides a very
|
||
|
# limited “export” functionality, that exports something like csv, but does nut
|
||
|
# support quoting. So it will fail if your separation character is either your
|
||
|
# column or row separator (e.g. if you have multiple lines in one field).
|
||
|
|
||
|
# This script takes unquoted data with uncommon separators (|||||| for columns,
|
||
|
# \n------\n for rows) and exports it as a more usable csv (quoted, cols
|
||
|
# separated by \t, rows separated by \n)
|
||
|
import sys
|
||
|
|
||
|
outfile = sys.argv[1]
|
||
|
|
||
|
quizlet_output = sys.stdin.read()
|
||
|
|
||
|
maybe_tsv = (
|
||
|
'"' + quizlet_output.replace("||||||", '"\t"').replace("\n------\n", '"\n"') + '"'
|
||
|
)
|
||
|
|
||
|
maybe_tsv = maybe_tsv[:-2]
|
||
|
|
||
|
with open(outfile, "w") as f:
|
||
|
f.write(maybe_tsv)
|