51
|
1 #!/usr/bin/env ruby
|
|
2
|
|
3 Suffix = '.agda.replaced'
|
|
4 EscapeChar = '@'
|
|
5 FileName = ARGV.first
|
|
6
|
|
7 ReplaceTable = {
|
|
8 '->' => 'rightarrow',
|
59
|
9 '⊔' => 'sqcup',
|
52
|
10 '∷' => 'text{::}',
|
51
|
11 '∙' => 'circ',
|
|
12 '≡' => 'equiv',
|
|
13 '×' => 'times',
|
|
14 '⟨' => 'langle',
|
|
15 '⟩' => 'rangle',
|
66
|
16 '₁' => 'text{1}',
|
|
17 'ℕ' => 'mathbb{N}',
|
51
|
18 '∎' => 'blacksquare'
|
|
19 }
|
|
20
|
|
21 code = File.read(FileName)
|
|
22 ReplaceTable.each do |k, v|
|
|
23 escaped_str = EscapeChar + "$\\#{v}$" + EscapeChar
|
|
24 code = code.gsub(k, escaped_str)
|
|
25 end
|
|
26
|
|
27 File.write(FileName.sub(/.agda$/, Suffix), code)
|