Segcolt f7d430ad64 A working template with limarka
Binaries are now too old to be working now.
2025-11-25 22:18:10 -03:00

39 lines
979 B
Ruby

require 'erb'
ERB_TEMPLATE = <<~HEREDOC
guard :shell do
<% all_tasks.each do |t, files| %>
watch(%r{^(<%= files.join('|') %>)$}) do |m|
system("rake <%= t %>")
end
<% end %>
watch(/^(anexos.md|apendices.md|errata.md|trabalho-academico.md|.*\.latex|configuracao.pdf|configuracao.yaml)$/) do |m|
puts "\#{Time.now.strftime('%H:%M:%S')} \#{m[0]} foi alterado. Iniciando geração do PDF"
`limarka exec`
# Exibe erros de citações inválidas
`pdfgrep -H --color always '\(\\?\\?\)' xxx*.pdf`
end
end
HEREDOC
desc "Generates a Guardfile from Rake tasks"
task :guard do
app = Rake::application
app.init
app.load_rakefile
all_tasks = {}
app.tasks.each do |t|
t.sources.each do |src|
if File.file?(src) then
all_tasks[t.name] = [] unless all_tasks[t.name]
all_tasks[t.name] << src
end
end
end
template = ERB.new(ERB_TEMPLATE)
File.write('Guardfile', template.result(binding))
end