feat(帮助系统): 添加helplist命令用于列出所有帮助主题

添加helplist.lua程序用于列出所有可用的帮助主题,支持排序和彩色输出选项
同时添加test_helplist.lua测试脚本验证helplist命令功能
This commit is contained in:
2025-09-02 17:28:43 +08:00
parent 207a856b46
commit 27d32e99ed
3 changed files with 127 additions and 1 deletions

View File

@@ -0,0 +1,63 @@
-- helplist.lua: List all available help documents
local help = require("help")
local textutils = require("textutils")
local term = require("term")
local colors = require("colors")
-- Help information function
local function printHelp()
print("Usage: helplist [options]")
print("Options:")
print(" --help, -h Show this help message")
print(" --sort, -s Sort topics alphabetically")
print(" --color, -c Show colored output")
print([[
Lists all available help topics in LeonOS.]])
end
-- Main function
local function main(args)
-- Process command line arguments
local showHelp = false
local sortTopics = false
local useColor = false
for _, arg in ipairs(args) do
if arg == "--help" or arg == "-h" then
showHelp = true
elseif arg == "--sort" or arg == "-s" then
sortTopics = true
elseif arg == "--color" or arg == "-c" then
useColor = true
end
end
if showHelp then
printHelp()
return
end
-- Get all help topics
local topics = help.topics()
-- Sort topics if requested
if sortTopics then
table.sort(topics)
end
-- Display the help topics
print("Available help topics (" .. #topics .. "):")
for _, topic in ipairs(topics) do
if useColor then
term.setTextColor(colors.cyan)
print(" " .. topic)
term.setTextColor(colors.white)
else
print(" " .. topic)
end
end
end
-- Run the main function
local args = {...}
main(args)