jenkins-bot has submitted this change and it was merged.
Change subject: Use default papersize when bundling.
......................................................................
Use default papersize when bundling.
We use the de facto convention established by `libpaper` on linux.
On other platforms, `/etc/papersize` probably doesn't exist, and so
we don't specify a papersize in the metabook.
An explicit papersize in the metabook json overrides the default.
Bug: 68836
Change-Id: If9657503522a95fc3c30867c71526415a3bc9d15
---
M bin/mw-ocg-bundler
1 file changed, 34 insertions(+), 0 deletions(-)
Approvals:
Cscott: Looks good to me, approved
jenkins-bot: Verified
diff --git a/bin/mw-ocg-bundler b/bin/mw-ocg-bundler
index 7c6064a..68d09af 100755
--- a/bin/mw-ocg-bundler
+++ b/bin/mw-ocg-bundler
@@ -28,6 +28,8 @@
'Force collection to use the given default language',
null)
.option('-s, --size <max image size>',
'Force the given maximum image dimension (in pixels)',
null)
+ .option('--papersize <letter|a4|auto>',
+ 'Set paper size', 'auto')
.option('--title <title>',
'Set the title of the generated collection', null)
// set this to true to emit deprecated file formats for better
pediapress
@@ -138,6 +140,38 @@
if (program.title) {
metabook.title = program.title;
}
+ if (!metabook.papersize) {
+ if (program.papersize === 'auto') {
+ // use user's default papersize, as spec'ed by libpaper.
+ // this may be a linuxism, but it's harmless if not
present.
+ if (process.env.PAPERSIZE) {
+ metabook.papersize = process.env.PAPERSIZE;
+ return metabook;
+ }
+ return P.call(fs.readFile, fs,
+ process.env.PAPERCONF ||
'/etc/papersize', 'utf8').
+ then(function(paperconf) {
+ // remove anything starting with #
(comments)
+ // ignore whitespace, take the "first
string"
+ // case-insensitive
+ paperconf =
paperconf.replace(/#[^\r\n]*/g, '').trim().
+ replace(/\s[\s\S]*/,
'').toLowerCase();
+ metabook.papersize = paperconf;
+ return metabook;
+ }, function() {
+ // no such file; leave papersize
unspecified.
+ return metabook;
+ });
+ }
+ metabook.papersize = program.papersize;
+ }
+ return metabook;
+}).then(function(metabook) {
+ if (metabook.papersize !== undefined &&
+ !/^(letter|a4)$/.test(metabook.papersize)) {
+ log("WARN: unknown papersize:", metabook.papersize);
+ delete metabook.papersize;
+ }
return bundler.bundle(metabook, {
nozip: !!program.directory,
output: program.directory || program.output,
--
To view, visit https://gerrit.wikimedia.org/r/160991
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: If9657503522a95fc3c30867c71526415a3bc9d15
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/extensions/Collection/OfflineContentGenerator/bundler
Gerrit-Branch: master
Gerrit-Owner: Cscott <[email protected]>
Gerrit-Reviewer: Arlolra <[email protected]>
Gerrit-Reviewer: Cscott <[email protected]>
Gerrit-Reviewer: Mwalker <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits