diff options
| author | Albert Krewinkel <albert@zeitkraut.de> | 2022-09-03 22:54:45 +0200 |
|---|---|---|
| committer | John MacFarlane <jgm@berkeley.edu> | 2022-10-20 09:11:57 -0700 |
| commit | f711c7f2aa87d0a23866a07d04d29681208b91c3 (patch) | |
| tree | 2a3b4106ab962f751f2e43f37d061502c5c1a1e8 /doc/lua-filters.md | |
| parent | 5d71276ecadf9201b9548d82bb908077d28ad27d (diff) | |
Lua: add new module `pandoc.zip`
Allows to handle docx and epub files.
Diffstat (limited to 'doc/lua-filters.md')
| -rw-r--r-- | doc/lua-filters.md | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/doc/lua-filters.md b/doc/lua-filters.md index 0c88433ae..90daa1365 100644 --- a/doc/lua-filters.md +++ b/doc/lua-filters.md @@ -5281,3 +5281,148 @@ Parameters: Returns: - A new [Version] object. + +# Module pandoc.zip + +Functions to create, modify, and extract files from zip archives. + +The module can be called as a function, in which case it behaves +like the `zip` function described below. + +Zip options are optional; when defined, they must be a table with +any of the following keys: + + - `recursive`: recurse directories when set to `true`; + - `verbose`: print info messages to stdout; + - `destination`: the value specifies the directory in which to + extract; + - `location`: value is used as path name, defining where files + are placed. + - `preserve_symlinks`: Boolean value, controlling whether + symbolic links are preserved as such. This option is ignored + on Windows. + +## Functions + +### Archive {#pandoc.zip.Archive} + +`Archive (bytestring_or_entries)` + +Reads an *Archive* structure from a raw zip archive or a list of +Entry items; throws an error if the given string cannot be decoded +into an archive. + +*Since: 1.0.0* + +Parameters: + +bytestring_or_entries +: (string|{ZipEntry,...}) + +Returns: + + - (ZipArchive) + +### Entry {#pandoc.zip.Entry} + +`Entry (path, contents[, modtime])` + +Generates a zip Entry from a filepath, the file's uncompressed +content, and the file's modification time. + +*Since: 1.0.0* + +Parameters: + +path +: file path in archive (string) + +contents +: uncompressed contents (string) + +modtime +: modification time (integer) + +### read_entry {#pandoc.zip.read_entry} + +`read_entry (filepath, opts)` + +Generates a ZipEntry from a file or directory. + +*Since: 1.0.0* + +Parameters: + +filepath +: (string) + +opts +: zip options (table) + +Returns: + + - a new zip archive entry (ZipEntry) + +### zip {#pandoc.zip.zip} + +`zip (filepaths[, options])` + +Package and compress the given files into a new Archive. + +*Since: 1.0.0* + +Parameters: + +filepaths +: list of files from which the archive is created. ({string,...}) + +options +: zip options (table) + +Returns: + + - a new archive (ZipArchive) + +## Types + +### Archive {#type-pandoc.zip.Archive} + +A zip archive with file entries. + +#### Fields + +`entries` +: files in this zip archive ({Entry,...}) + +#### Methods + +`extract([opts])` +: Extract all files from this archive, creating directories as + needed. Note that the last-modified time is set correctly only + in POSIX, not in Windows. This function fails if encrypted + entries are present. + + Use `archive:extract{destination = 'dir'}` to extract to + subdirectory `dir`. + +`bytestring()` +: Returns the raw binary string representation of the archive. + +### Entry {#type-pandoc.zip.Entry} + +File or directory entry in a zip archive. + +#### Fields + +`path` +: relative path, using `/` as separator + +`modtime` +: modification time (seconds since unix epoch) + +#### Methods + +`contents([password])` +: Get the uncompressed contents of a zip entry. If `password` is + given, then that password is used to decrypt the contents. An + error is throws if decrypting fails. |
