Common Lisp Package: ODS4CL

README:

FUNCTION

Public

MAKE-SPREADSHEET (OUTPUT SHEETS &KEY (IF-EXISTS ERROR))

Create an ODS spreadsheet from SHEET. Write the spreadsheet into OUTPUT which can be either a stream or a pathname. If the file OUTPUT already exists and IF-EXISTS is :ERROR, signal an error; if IF-EXISTS is :REPLACE, silently replace the existing file. SHEET must be a list of pages where every page is a list where the first element is the page name (a string) and the remaining elements are the sheet rows. Each row is a list of elements.

Private

ESCAPE-STRING (STRING)

Escape STRING making it safe to be inserted into XML code.

MAKE-DIRECTORY-ZIPPED-STREAM (INPUT-DIRECTORY)

Zip the content of INPUT-DIRECTORY and return a stream object to the zipped bytes.

WRITE-DOCUMENT (SHEETS STREAM)

Write an ODS spreadsheet to STREAM. SHEETS is a list of spreadsheets each one consists of a name and a grid. The grid is a list rows and each row is a list of cells.

Undocumented

MAKE-CONTENT-FILE (PATH SHEETS)

MAKE-MANIFEST-FILE (PATH)

MAKE-META-FILE (PATH SHEETS &KEY LANGUAGE OWNER)

MAKE-MIMETYPE-FILE (PATH)

MAKE-STYLES-FILE (PATH)

WRITE-CELL (CELL STREAM)

WRITE-GRID (GRID STREAM)

WRITE-PREAMBLE (STREAM)

WRITE-ROW (ROW STREAM)

WRITE-SHEETS (SHEETS STREAM)

WRITE-SPREADSHEET-BODY (SHEETS STREAM)

ZIP-ODS (OUTPUT-FILE INPUT-DIRECTORY)