summaryrefslogtreecommitdiff
path: root/scripts/context/lua/mtx-pdf.lua
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2018-04-13 15:51:39 +0200
committerContext Git Mirror Bot <phg42.2a@gmail.com>2018-04-13 15:51:39 +0200
commit25fcad7435f56cdce2658336909f4da6a65589c0 (patch)
treec23d5d04a7e86c7ddc2ebeca06d3de63ebdc806e /scripts/context/lua/mtx-pdf.lua
parent1e5d7f41ddede5e6400a2a7762032823d3545df4 (diff)
downloadcontext-25fcad7435f56cdce2658336909f4da6a65589c0.tar.gz
2018-04-13 15:02:00
Diffstat (limited to 'scripts/context/lua/mtx-pdf.lua')
-rw-r--r--scripts/context/lua/mtx-pdf.lua16
1 files changed, 13 insertions, 3 deletions
diff --git a/scripts/context/lua/mtx-pdf.lua b/scripts/context/lua/mtx-pdf.lua
index 371b7f319..7e05a9f74 100644
--- a/scripts/context/lua/mtx-pdf.lua
+++ b/scripts/context/lua/mtx-pdf.lua
@@ -7,7 +7,7 @@ if not modules then modules = { } end modules ['mtx-pdf'] = {
}
local tonumber = tonumber
-local format, gmatch = string.format, string.gmatch
+local format, gmatch, gsub = string.format, string.gmatch, string.gsub
local utfchar = utf.char
local concat = table.concat
local setmetatableindex, sortedhash, sortedkeys = table.setmetatableindex, table.sortedhash, table.sortedkeys
@@ -25,9 +25,15 @@ local helpinfo = [[
<subcategory>
<flag name="info"><short>show some info about the given file</short></flag>
<flag name="metadata"><short>show metadata xml blob</short></flag>
+ <flag name="pretty"><short>replace newlines in metadata</short></flag>
<flag name="fonts"><short>show used fonts (<ref name="detail)"/></short></flag>
<flag name="linearize"><short>linearize given file</short></flag>
</subcategory>
+ <subcategory>
+ <example><command>mtxrun --script pdf --info foo.pdf</command></example>
+ <example><command>mtxrun --script pdf --metadata foo.pdf</command></example>
+ <example><command>mtxrun --script pdf --metadata --pretty foo.pdf</command></example>
+ </subcategory>
</category>
</flags>
</application>
@@ -94,13 +100,17 @@ function scripts.pdf.info(filename)
end
end
-function scripts.pdf.metadata(filename)
+function scripts.pdf.metadata(filename,pretty)
local pdffile = loadpdffile(filename)
if pdffile then
local catalog = pdffile.Catalog
local metadata = catalog.Metadata
if metadata then
- report("metadata > \n\n%s\n",metadata())
+ metadata = metadata()
+ if pretty then
+ metadata = gsub(metadata,"\r","\n")
+ end
+ report("metadata > \n\n%s\n",metadata)
else
report("no metadata")
end