「モジュール:StripFilename」の版間の差分

提供:脳科学辞典
ナビゲーションに移動 検索に移動
(1版)
 
(1版 をインポートしました)
 
(他の1人の利用者による、間の1版が非表示)
10行目: 10行目:
   -- Remove any recognized extension
   -- Remove any recognized extension
   local e = string.lower(string.gsub(f,"^.*%.([^%.]*)$","%1"))
   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}
   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, mp3=1}
   if map[e]
   if map[e]
     then n = string.gsub(f,"^(.*)%.[^%.]*$","%1")
     then n = string.gsub(f,"^(.*)%.[^%.]*$","%1")
29行目: 29行目:
   -- Keep, replace with, or add "svg" extension
   -- Keep, replace with, or add "svg" extension
   local e = string.lower(string.gsub(f,"^.*%.([^%.]*)$","%1"))
   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}
   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, mp3=1}
   if e=="svg"
   if e=="svg"
     then n = f
     then n = f

2019年4月20日 (土) 22:25時点における最新版

このモジュールについての説明文ページを モジュール:StripFilename/doc に作成できます

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, mp3=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, mp3=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