jenkins-bot has submitted this change and it was merged.

Change subject: Accept papersize setting from metabook
......................................................................


Accept papersize setting from metabook

 * Rename size to papersize

 * Fix handling number of columns as a string

Bug: 68836
Change-Id: I7de9e25bd6b06e0b80aea7efcb1863376d1bef8f
---
M bin/mw-ocg-latexer
M lib/index.js
2 files changed, 16 insertions(+), 7 deletions(-)

Approvals:
  Cscott: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/bin/mw-ocg-latexer b/bin/mw-ocg-latexer
index bfa6e36..3176d66 100755
--- a/bin/mw-ocg-latexer
+++ b/bin/mw-ocg-latexer
@@ -16,8 +16,8 @@
        .usage('[options] <bundle_dir or bundle.zip>')
        .option('-o, --output <filename>',
                        'Save PDF to the given <filename>', null)
-       .option('-s, --size <letter|a4>',
-                       'Set paper size', 'letter')
+       .option('-s, --papersize <letter|a4>',
+                       'Set paper size', null)
        .option('-t, --toc <yes|no|auto>',
                        'Force presence/absence of table of contents [auto]', 
'auto')
        .option('-L, --lang <2-char lang code>',
@@ -76,7 +76,6 @@
 
 var options = {
        bundle: bundlefile,
-       size: program.size,
        latex: !!program.latex,
        debug: !!program.debug,
        output: program.output,
@@ -90,6 +89,14 @@
        options.toc = !/^(no|false|off)$/i.test(program.toc);
 }
 
+if (program.papersize !== null) {
+       if (!/^(letter|a4)$/.test(program.papersize)) {
+     console.error("Bad paper size: "+program.papersize);
+     process.exit(1);
+   }
+   options.papersize = program.papersize;
+}
+
 latexer.convert(options).catch(function(err) {
        var msg = {
                type: 'log',
diff --git a/lib/index.js b/lib/index.js
index b5d42ae..390184b 100644
--- a/lib/index.js
+++ b/lib/index.js
@@ -1520,7 +1520,7 @@
                encoding: 'utf8'
        });
        var head = STD_HEADER, columns = 2;
-       if (options.onecolumn || metabook.columns === 1) {
+       if (options.onecolumn || (+metabook.columns) === 1) {
                head = head.replace(/twocolumn/, 'onecolumn');
                columns = 1;
        }
@@ -1537,6 +1537,8 @@
        if (!options.parindent) {
                head += 
'\n\\setlength{\\parindent}{0pt}\\setlength{\\parskip}{5pt}';
        }
+       var papersize = options.papersize || metabook.papersize || "a4";
+       head = head.replace(/\]\{article\}/, ","+papersize+"paper$&");
        // book or article?
        var hasChapters =
                metabook.items.some(function(it) { return it.type === 
'chapter'; });
@@ -1747,7 +1749,7 @@
 
 // Step 4: write LaTeX stub and/or compile to a PDF.
 // Return a promise which will be resolved with no value when complete.
-var compileLatex = function(builddir, options) {
+var compileLatex = function(metabook, builddir, options) {
        var status = options.status;
        status.createStage(0, 'Compiling PDF');
 
@@ -1756,7 +1758,7 @@
                options: [
                        "-interaction=nonstopmode",
                        "-halt-on-error",
-                       '-papersize=' + options.size
+                       '-papersize=' + (options.papersize || 
metabook.papersize || "a4")
                ],
                texpath: path.join(__dirname, '..', 'tex') + ':',
                tmpdir: builddir
@@ -1846,7 +1848,7 @@
                return generateLatex(metabook, builddir, imagemap, options);
        }).then(function() {
                // compile it to PDF
-               return compileLatex(builddir, options);
+               return compileLatex(metabook, builddir, options);
        }).then(function() {
                status.createStage(0, 'Done');
                return; // success!

-- 
To view, visit https://gerrit.wikimedia.org/r/160237
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I7de9e25bd6b06e0b80aea7efcb1863376d1bef8f
Gerrit-PatchSet: 6
Gerrit-Project: 
mediawiki/extensions/Collection/OfflineContentGenerator/latex_renderer
Gerrit-Branch: master
Gerrit-Owner: Arlolra <[email protected]>
Gerrit-Reviewer: Arlolra <[email protected]>
Gerrit-Reviewer: Cscott <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to