From bf57f03babb2375adc9a225f4d95799c37d81d55 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Wed, 6 Feb 2013 23:10:58 -0500 Subject: v4: options, param, pdf papersize, command-line options to override sisurc --- lib/sisu/v4/options.rb | 57 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 56 insertions(+), 1 deletion(-) (limited to 'lib/sisu/v4/options.rb') diff --git a/lib/sisu/v4/options.rb b/lib/sisu/v4/options.rb index fca60a3d..8f07e0c4 100644 --- a/lib/sisu/v4/options.rb +++ b/lib/sisu/v4/options.rb @@ -476,8 +476,14 @@ module SiSU_Commandline when /^--(?:epub)$/; c=c+'e' when /^--(?:od[ft])$/; c=c+'o' when /^--(?:pdf)$/; c=c+'p' + when /^--pdf-(?:a4|a5|b5|legal|letter)$/; c=c+'p' + mod << m when /^--pdf-(?:p|l|portrait|landscape)$/; c=c+'L' mod << m + when /^--pdf-(?:p(?:ortrait)?|l(?:andscape)?)-(?:a4|letter|a5|b5|legal)$/; c=c+'L' + mod << m + when /^--pdf-(?:a4|letter|a5|b5|legal)-(?:p(?:ortrait)?|l(?:andscape)?)$/; c=c+'L' + mod << m when /^--(?:concordance|wordmap)$/; c=c+'w' when /^--(?:manpage|man)$/; c=c+'i' when /^--(?:texinfo)$/; c=c+'I' @@ -783,7 +789,7 @@ module SiSU_Commandline ? { bool: true, set: :on } : { bool: false, set: :na } act[:pdf]=if (cmd =~/p/ \ - || mod.inspect =~/"--pdf"/) + || mod.inspect =~/"--pdf"|"--pdf-(?:a4|a5|b5|letter|legal)"/) if mod.inspect =~/"--portrait"/ act[:pdf_p]={ bool: true, set: :on } act[:pdf_l]={ bool: false, set: :na } @@ -799,13 +805,62 @@ module SiSU_Commandline end else act[:pdf_p]=(mod.inspect =~/"--pdf-(?:p|portrait)"/) \ + || (mod.inspect =~/"--pdf(?:-p(?:ortrait)?-(?:a4|a5|b5|letter|legal))"/) \ + || (mod.inspect =~/"--pdf-(?:a4|a5|b5|letter|legal)(?:-p(?:ortrait)?)"/) \ ? { bool: true, set: :on } : { bool: false, set: :na } act[:pdf_l]=(mod.inspect =~/"--pdf-(?:l|landscape)"/) \ + || (mod.inspect =~/"--pdf(?:-l(?:andscape)?-(?:a4|a5|b5|letter|legal))"/) \ + || (mod.inspect =~/"--pdf-(?:a4|a5|b5|letter|legal)(?:-l(?:andscape)?)"/) \ ? { bool: true, set: :on } : { bool: false, set: :na } { bool: false, set: :na } end + if act[:pdf][:set]==:on \ + or act[:pdf_p][:set]==:on \ + or act[:pdf_l][:set]==:on + #mod.inspect =~/"--pdf-([pl]-|portrait-|landscape-)?(?:a4|a5|b5|letter|legal)"/ + act[:pdf_a4]=if mod.inspect =~/"--pdf(?:-[pl]|-portrait|-landscape)?-a4"/ \ + or mod.inspect =~/"--pdf-a4(?:-[pl]|-portrait|-landscape)?"/ \ + or mod.inspect =~/"--a4"|--papersize-a4"/ \ + or mod.inspect =~/"--papersize=\S*a4\b\S*"/ #--papersize=a4,a5 + { bool: true, set: :on } + else + { bool: false, set: :na } + end + act[:pdf_a5]=if mod.inspect =~/"--pdf(?:-[pl]|-portrait|-landscape)?-a5"/ \ + or mod.inspect =~/"--pdf-a5(?:-[pl]|-portrait|-landscape)?"/ \ + or mod.inspect =~/"--a5"|"--papersize-a5"/ \ + or mod.inspect =~/"--papersize=\S*a5\b\S*"/ #--papersize=a4,a5 + { bool: true, set: :on } + else + { bool: false, set: :na } + end + act[:pdf_b5]=if mod.inspect =~/"--pdf(-[pl]|-portrait|-landscape)?-b5"/ \ + or mod.inspect =~/"--pdf-b5(?:-[pl]|-portrait|-landscape)?"/ \ + or mod.inspect =~/"--b5"|"--papersize-b5"/ \ + or mod.inspect =~/"--papersize=\S*b5\b\S*"/ + { bool: true, set: :on } + else + { bool: false, set: :na } + end + act[:pdf_letter]=if mod.inspect =~/"--pdf(-[pl]|-portrait|-landscape)?-letter"/ \ + or mod.inspect =~/"--pdf-letter(?:-[pl]|-portrait|-landscape)?"/ \ + or mod.inspect =~/"--letter"|"--papersize-letter"/ \ + or mod.inspect =~/"--papersize=\S*letter\b\S*"/ + { bool: true, set: :on } + else + { bool: false, set: :na } + end + act[:pdf_legal]=if mod.inspect =~/"--pdf(-[pl]|-portrait|-landscape)?-legal"/ \ + or mod.inspect =~/"--pdf-legal(?:-[pl]|-portrait|-landscape)?"/ \ + or mod.inspect =~/"--legal"|"--papersize-legal"/ \ + or mod.inspect =~/"--papersize=\S*legal\b\S*"/ + { bool: true, set: :on } + else + { bool: false, set: :na } + end + end act[:epub]=(cmd =~/e/ \ || mod.inspect =~/"--epub"/) \ ? { bool: true, set: :on } -- cgit v1.2.3