class Faktura::CLI
Public Instance Methods
execute()
click to toggle source
# File lib/faktura/cli.rb, line 15 def execute if install? require 'fileutils' nautilus_dir = File.expand_path("~/.local/share/nautilus/scripts") FileUtils.mkdir_p nautilus_dir nautilus_script = File.expand_path(names[0], nautilus_dir) open(nautilus_script, "w") do |f| f.write <<END #!/bin/bash set -e set -u faktura -swo "$1" END end File.chmod(0755, nautilus_script) return end names.each do |name| if directory? Dir["#{name}/**/*.pdf"].each do |fn| process fn end else process name end end end
process(filename)
click to toggle source
# File lib/faktura/cli.rb, line 48 def process(filename) pdf = PDF.new filename stamped_filename = nil puts "#{filename}: #{pdf}".colorize(:light_blue) if dump? puts pdf.content end if stamp? stamper = Faktura::Stamp.new(pdf) stamped = stamper.stamp(get_name, get_description(pdf)) stamped_filename = output_file(filename) stamped.write stamped_filename puts "Created file #{stamped_filename}".colorize(:light_yellow) end if printer puts "Printing #{stamped_filename || filename} to printer #{printer}".colorize(:green) system('lpr', '-P', printer, stamped_filename || filename) end if open? system('xdg-open', stamped_filename || filename) end end