38 lines
895 B
Text
38 lines
895 B
Text
|
local tArgs = { ... }
|
||
|
|
||
|
-- Get all the files in the directory
|
||
|
local sDir = shell.dir()
|
||
|
if tArgs[1] ~= nil then
|
||
|
sDir = shell.resolve(tArgs[1])
|
||
|
end
|
||
|
|
||
|
if not fs.isDir(sDir) then
|
||
|
printError("Not a directory")
|
||
|
return
|
||
|
end
|
||
|
|
||
|
-- Sort into dirs/files, and calculate column count
|
||
|
local tAll = fs.list(sDir)
|
||
|
local tFiles = {}
|
||
|
local tDirs = {}
|
||
|
|
||
|
local bShowHidden = settings.get("list.show_hidden")
|
||
|
for _, sItem in pairs(tAll) do
|
||
|
if bShowHidden or string.sub(sItem, 1, 1) ~= "." then
|
||
|
local sPath = fs.combine(sDir, sItem)
|
||
|
if fs.isDir(sPath) then
|
||
|
table.insert(tDirs, sItem)
|
||
|
else
|
||
|
table.insert(tFiles, sItem)
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
table.sort(tDirs)
|
||
|
table.sort(tFiles)
|
||
|
|
||
|
if term.isColour() then
|
||
|
textutils.pagedTabulate(colors.green, tDirs, colors.white, tFiles)
|
||
|
else
|
||
|
textutils.pagedTabulate(colors.lightGray, tDirs, colors.white, tFiles)
|
||
|
end
|