|
Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
-- This file:
-- http://anggtwu.net/blogme3/maxima.lua.html
-- http://anggtwu.net/blogme3/maxima.lua
-- (find-angg "blogme3/maxima.lua")
-- Author: Eduardo Ochs <eduardoochs@gmail.com>
--
-- (defun e () (interactive) (find-angg "blogme3/maxima.lua"))
-- (find-es "maxima" "tag-table")
MaximaHtml = Class {
type = "MaximaHtml",
__index = {
getbody = function (mh)
local bigstr = ee_readfile(mh.fname)
local bigstr2 = bigstr:gsub('#A%(%(%d+%)%s+base%-char%s+%.%s+"(.-)"%)', '"%1"')
local bigstr3 = bigstr2:match("'%b()")
local bigstr4 = bigstr3:sub(4, -2)
mh.body = bigstr4
return mh
end,
parsebody = function (mh)
return mh.body:gmatch('%("(.-)"%s+"(.-)"%s+"(.-)"%)')
end,
addentriesto = function (mh, set)
for a,b,c in mh:parsebody() do
set:add(a, b.."#"..c)
end
return set
end,
getset = function (mh)
mh.s = Set.new()
mh:addentriesto(mh.s)
return mh
end,
geturl = function (mh, key)
if not mh.s:has(key) then return nil end
return (mh.base or "")..mh.s:has(key)
end,
--
-- High level:
get = function (mh, key)
if not mh.body then mh:getbody() end
if not mh.s then mh:getset() end
return mh:geturl(key)
end,
},
}
--[[
* (eepitch-lua51)
* (eepitch-kill)
* (eepitch-lua51)
dofile "maxima.lua"
mh = MaximaHtml {
fname = "/usr/local/share/info/maxima-index-html.lisp",
base = "file:///usr/local/share/maxima/branch_5_46_base_250_gbd5ffb328/doc/html/"
}
mh:getbody()
mh:getbody():getset()
= mh.s
= mh.s:ksc("\n")
= mh:geturl("funmake")
= mh:get("funmake")
--]]
-- Local Variables:
-- coding: utf-8-unix
-- End: