|
|
| Line 1: |
Line 1: |
| local p = {}
| |
|
| |
|
| function p.main(frame)
| |
| local f = frame["args"][1]
| |
| -- Strip whitespace at beginning and end of input
| |
| f = string.gsub(f,"^%s*(.-)%s*$","%1")
| |
| -- Remove namespace prefix
| |
| f = string.gsub(f,"^[Ff][Ii][Ll][Ee]:(.*)$","%1")
| |
| f = string.gsub(f,"^[Ii][Mm][Aa][Gg][Ee]:(.*)$","%1")
| |
| -- Remove any recognized extension
| |
| local e = string.lower(string.gsub(f,"^.*%.([^%.]*)$","%1"))
| |
| local map = {svg=1, png=1, jpg=1, jpeg=1, gif=1, tif=1, tiff=1, xcf=1, mid=1, ogg=1, ogv=1, djvu=1, oga=1, flac=1, wav=1, webm=1, pdf=1}
| |
| if map[e]
| |
| then n = string.gsub(f,"^(.*)%.[^%.]*$","%1")
| |
| else n = f
| |
| end
| |
| return n
| |
| end
| |
|
| |
| function p.svg(frame)
| |
| local f = frame["args"][1]
| |
| -- Strip whitespace at beginning and end of input
| |
| f = string.gsub(f,"^%s*(.-)%s*$","%1")
| |
| -- Remove namespace prefix
| |
| f = string.gsub(f,"^[Ff][Ii][Ll][Ee]:(.*)$","%1")
| |
| f = string.gsub(f,"^[Ii][Mm][Aa][Gg][Ee]:(.*)$","%1")
| |
| -- Replace underscores with spaces
| |
| f = string.gsub(f,"_"," ")
| |
| -- Keep, replace with, or add "svg" extension
| |
| local e = string.lower(string.gsub(f,"^.*%.([^%.]*)$","%1"))
| |
| local map = {png=1, jpg=1, jpeg=1, gif=1, tif=1, tiff=1, xcf=1, mid=1, ogg=1, ogv=1, djvu=1, oga=1, flac=1, wav=1, webm=1, pdf=1}
| |
| if e=="svg"
| |
| then n = f
| |
| elseif map[e]
| |
| then n = string.gsub(f,"^(.*)%.[^%.]*$","%1.svg")
| |
| else n = f..".svg"
| |
| end
| |
| return n
| |
| end
| |
|
| |
| return p
| |