Return filetype's in lslua Thread last updated on 2007-05-09 20:40:25

Posted by member 248213 on 2007-05-09 20:38:09

This function attempts to figure out what filetype any extension is in relation to Litestep.

eg; a .png is an image, an .ico and .dll can be used as icon files for xlabel etc.


Youll need my misc.fileextension() function for this to work.
Its in the "Return file extensions in lslua" thread here


function misc.filetype (file)

local fileextension = misc.fileextension (file)

if fileextension == "ico" then return "icon"
elseif fileextension == "dll" then return "icon"

elseif fileextension == "png" then return "image"
elseif fileextension == "bmp" then return "image"

elseif fileextension == "txt" then return "text"
elseif fileextension == "rc" then return "text"
elseif fileextension == "lua" then return "text"
elseif fileextension == "mz" then return "text"
elseif fileextension == "doc" then return "text"
elseif fileextension == "log" then return "text"
elseif fileextension == "bat" then return "text"
elseif fileextension == "ini" then return "text"
elseif fileextension == "xml" then return "text"
elseif fileextension == "inf" then return "text"
elseif fileextension == "scp" then return "text"
elseif fileextension == "adm" then return "text"
elseif fileextension == "nt" then return "text"
elseif fileextension == "vbs" then return "text"
elseif fileextension == "py" then return "text"
elseif fileextension == "c" then return "text"
elseif fileextension == "cpp" then return "text"
elseif fileextension == "h" then return "text"
elseif fileextension == "css" then return "text"
elseif fileextension == "js" then return "text"
elseif fileextension == "htaccess" then return "text"
elseif fileextension == "php" then return "text"
elseif fileextension == "htm" then return "text"
elseif fileextension == "html" then return "text"

else return "unknown" end
end




Here are some examples of usage:

!luaexec misc.filetype ("C:\zombies\zombie1.png")
returns "image"


*xdeskondrop .mouse1 !luaexec message_box(misc.filetype ("%[droppath]%"))
this would open a little message box with the filetype of the dropped file.




You could further elaborate the listing, making .lua, .rc and .mz return scripts etc, but I designed it more for xlabel and what resources can be used (any textfile can show up in xlabel given the right settings)

Enjoy!