X-Git-Url: https://git.stderr.nl/gitweb?p=matthijs%2Fmaster-project%2Freport.git;a=blobdiff_plain;f=pret-lam.lua;h=86d7272c4f65615276747be84e1b0c39f6ef236f;hp=98244b0f421c5fe421ccb0578fec2ff1764d8612;hb=db2dce12a0b9b988be956104b908e28375bbfd1c;hpb=41753b358251eb737709bbc4172cb551ef41ef87 diff --git a/pret-lam.lua b/pret-lam.lua index 98244b0..86d7272 100644 --- a/pret-lam.lua +++ b/pret-lam.lua @@ -23,8 +23,9 @@ local symbols = { -- The default * sits very high above the baseline, \ast (u+2217) looks -- better. ['*'] = {repr = '\\ast'}, - ['~'] = {repr = '\\sim'}, + ['~'] = {repr = '\\HDLine[width=.20 * \\the\\textwidth]'}, ['|'] = {repr = '\\char' .. utf.byte('|')}, + ['$'] = {repr = '\\char' .. utf.byte('$')}, } -- Keywords that should be bold @@ -32,7 +33,10 @@ local keywords = { ['case'] = {}, ['of'] = {}, ['let'] = {}, + ['letrec'] = {}, + ['letnonrec'] = {}, ['in'] = {}, + ['DEFAULT'] = {small = true}, } local in_block = 0 @@ -189,7 +193,7 @@ function vis.begin_of_display() if in_block == 0 then -- Initially allow subscripts using _ or just appending a number (later, -- we will add extra patterns here. - submatches = {"^(%a*)_([%a%d,]+)$", "^(%a+)(%d+)$"} + submatches = {"^(%a*)_([%a%d,]+)$", "^(%a+)([%d,]+)$"} -- This stores all the bases we've encountered so far (to prevent -- duplicates). For each of them there will be a pattern in submatches -- above. @@ -218,6 +222,9 @@ function vis.flush_line(str,nested) if keywords[res] then -- Make all keywords bold word = "{\\bold " .. word .. "}" + if keywords[res].small then + word = "\\small" .. word -- Curlies were added above + end else -- Process any subscripts in the word word = do_subscripts(word)