formatafacil 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e61b69fbb38c967305f8f3d55075c082d094c97c
4
- data.tar.gz: 35dd527393caeb8664fcefb8ae29b6bc60d88960
3
+ metadata.gz: babbb7a46fb07890d25da6d226c81a6572bfecd8
4
+ data.tar.gz: a3f93192540634f36fb28fd23584a2dd9a00a51d
5
5
  SHA512:
6
- metadata.gz: 746cb4e6e90100e35bdf6b0afcf653ae7a5fb3fc53fccbfc99727a3eb49bddb05fedcf0ce826d49f1e901b5085f09bdbad65a671638f96b9d8cea196d4e0eb73
7
- data.tar.gz: bdf0fb7be6c8302f13408afe57921c2457141dd5f5fca1b70ab065ecf186334febea6579e50b5d2f990f8f08e1ad43169352d6885cadfae935dcbf04ffcbb4a4
6
+ metadata.gz: 6db2c48744ea0389ff6e4aca0794e03b15ac3834aa296c306010d27aacc49f144555a6dc26e6ee91e72967b7440e55f3c239edb673ed73ba4a4735571612b18e
7
+ data.tar.gz: 3871a7af40bb3f7d37959634689eac21971a1bb5201bd69de4d1697eb2ce8ac7d6ce3679950216bbcf3944d604f808abf0dbff44cc268c5c639f8ad62e493b78
data/CHANGELOG.md CHANGED
@@ -1,13 +1,17 @@
1
1
  # formatafacil Change Log
2
2
 
3
3
 
4
+ ## 0.2.3
5
+
6
+ - Compilação do pdf após geração do artigo em latex [#5](https://github.com/formatafacil/formatafacil/issues/5)
7
+
4
8
  ## 0.2.2
5
9
 
6
- - Tratamento de erros #3
10
+ - Tratamento de erros [#3](https://github.com/formatafacil/formatafacil/issues/3)
7
11
 
8
12
  ## 0.2.1
9
13
 
10
- - tratamento de erros: falta de arquivos, problemas nos metadados #2
14
+ - tratamento de erros: falta de arquivos, problemas nos metadados [#2](https://github.com/formatafacil/formatafacil/issues/2)
11
15
 
12
16
  ## 0.1.5
13
17
 
@@ -19,7 +23,7 @@
19
23
 
20
24
  ## 0.1.3
21
25
 
22
- - Correção de problema quando arquivo não termina com quebra de linha #1
26
+ - Correção de problema quando arquivo não termina com quebra de linha [#1](https://github.com/formatafacil/formatafacil/issues/1)
23
27
 
24
28
  ## 0.1.2
25
29
 
data/README.md CHANGED
@@ -63,6 +63,10 @@ Lista templates:
63
63
 
64
64
  formatafacil modelos
65
65
 
66
+ Gera o pdf otimizando-o para vizualização na web (utilizando `qpdf`):
67
+
68
+ formatafacil artigo -w
69
+
66
70
  Cria um diretório e estrutura de um artigo no formato do sbc:
67
71
 
68
72
  formatafacil cria --template=artigo-abnt
data/exe/formatafacil CHANGED
@@ -27,10 +27,14 @@ desc 'Gera artigos em latex e compila para pdf'
27
27
  command :artigo do |c|
28
28
 
29
29
  c.desc 'Gera o arquivo pdf compilando o arquivo latex'
30
- c.switch :pdf
30
+ c.switch :pdf, :default_value => true
31
+
32
+ c.desc 'Linealiza o pdf otimizando-o para web'
33
+ c.switch [:w, 'otimiza-para-web'], :default_value => false
34
+
35
+ c.desc 'Diretório para execução'
36
+ c.flag [:dir]
31
37
 
32
- c.desc 'Seleciona o modelo do artigo'
33
- c.flag [:m,:modelo]
34
38
 
35
39
  c.action do |global,options,args|
36
40
  if (global['logfile'])
@@ -38,12 +42,26 @@ command :artigo do |c|
38
42
  else
39
43
  logger = Logger.new(STDERR)
40
44
  end
41
- logger.level = Logger::WARN
45
+ logger.level = Logger::INFO
42
46
 
43
47
  begin
44
- tarefa = Formatafacil::ArtigoTarefa.new()
48
+ compilador = nil
49
+
50
+ if (options['pdf'])
51
+ compilador = Formatafacil::Compila.new()
52
+ end
53
+
54
+ tarefa = Formatafacil::ArtigoTarefa.new(:compilador => compilador)
45
55
  tarefa.logger = logger
46
- tarefa.executa
56
+
57
+ if options['dir'] then
58
+ Dir.chdir(options['dir']) do
59
+ tarefa.executa
60
+ end
61
+ else
62
+ tarefa.executa
63
+ end
64
+
47
65
  rescue Exception => e
48
66
  logger.error {e.message}
49
67
  end
@@ -37,6 +37,9 @@ module Formatafacil
37
37
  attr_accessor 'arquivo_saida_pdf'
38
38
  attr_accessor 'arquivo_saida_latex'
39
39
 
40
+ # Tarefa que pode ser encadeada para compilar o artigo para pdf
41
+ attr_accessor 'compilador'
42
+
40
43
  ##
41
44
  # Um parâmetro obrigatório é o modelo do artigo
42
45
  #
@@ -59,6 +62,7 @@ module Formatafacil
59
62
  verifica_conteudos
60
63
  unifica_metadados
61
64
  escreve_artigo_latex
65
+ compila_pdf
62
66
  #ler_configuracao
63
67
  #executa_com_configuracao
64
68
  end
@@ -341,6 +345,9 @@ module Formatafacil
341
345
  }
342
346
  end
343
347
 
348
+ def compila_pdf
349
+ @compilador.compila_artigo unless @compilador.nil?
350
+ end
344
351
 
345
352
 
346
353
  end
@@ -1,14 +1,16 @@
1
+ require 'formatafacil/tarefa'
2
+
1
3
  module Formatafacil
2
4
  ARTIGO_LATEX = "artigo.tex"
3
5
  ARTIGO_PDF = "artigo.pdf"
4
-
5
- class Compila
6
+
7
+ class Compila < Tarefa
6
8
  def compila_artigo
7
9
  raise "Erro ao tentar compilar um arquivo que não existe: #{ARTIGO_LATEX}" unless File.exist?(ARTIGO_LATEX)
8
- system("/usr/bin/pdflatex -interaction=batchmode #{ARTIGO_LATEX}")
9
- system("/usr/bin/pdflatex -interaction=batchmode #{ARTIGO_LATEX}")
10
- raise "Erro durante a criação do PDF, provavelmente existe erro no arquivo #{ARTIGO_LATEX}" unless File.exist?(ARTIGO_PDF)
10
+ Kernel::system("latexmk -pdf -time -silent #{ARTIGO_LATEX}")
11
+ raise "Erro durante a criação do PDF, provavelmente existe erro no arquivo #{ARTIGO_LATEX}" unless File.exist?(ARTIGO_PDF)
12
+ logger.info "Arquivo compilado com sucesso." unless logger.nil?
11
13
  end
12
-
14
+
13
15
  end
14
16
  end
@@ -1,3 +1,3 @@
1
1
  module Formatafacil
2
- VERSION = "0.2.2"
2
+ VERSION = "0.2.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: formatafacil
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eduardo de Santana Medeiros Alexandre
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-12-03 00:00:00.000000000 Z
11
+ date: 2015-12-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler