diff options
Diffstat (limited to 'examples/csv2sexp.py')
| -rw-r--r-- | examples/csv2sexp.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/examples/csv2sexp.py b/examples/csv2sexp.py new file mode 100644 index 0000000..9fc09e0 --- /dev/null +++ b/examples/csv2sexp.py @@ -0,0 +1,30 @@ +### guile-xapian --- Guile bindings for Xapian +### Copyright © 2026 Arun Isaac <arunisaac@systemreboot.net> +### +### This file is part of guile-xapian. +### +### guile-xapian is free software: you can redistribute it and/or +### modify it under the terms of the GNU General Public License as +### published by the Free Software Foundation, either version 2 of the +### License, or (at your option) any later version. +### +### guile-xapian is distributed in the hope that it will be useful, +### but WITHOUT ANY WARRANTY; without even the implied warranty of +### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +### General Public License for more details. +### +### You should have received a copy of the GNU General Public License +### along with guile-xapian. If not, see +### <https://www.gnu.org/licenses/>. + +import csv, sys + +def write (str): + return '"{}"'.format(str.replace('"', '\\"')) + +print('(') +for row in csv.DictReader(sys.stdin): + print('({})'.format(' '.join([write(row['DESCRIPTION']), + write(row['TITLE']), + write(row['id_NUMBER'])]))) +print(')') |
