Advertisement
Alex1979

viewmethods

Jul 9th, 2015
1,225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.52 KB | None | 0 0
  1. local component = require("component")
  2. local term = require('term')
  3. local text = require("text")
  4. local components = {}
  5. local methods = {}
  6. local offset = 0
  7. term.clear()
  8. for address, name in component.list() do
  9.     if name:len() > offset then
  10.       offset = name:len()
  11.     end
  12.     components[address] = name
  13. end
  14.  
  15. offset = offset + 2
  16. print(' -------- Найденные компоненты --------')
  17. for address, name in pairs(components) do
  18.   io.write(text.padRight(name, offset) .. address .. '\n')
  19. end
  20. print(' --------------------------------------')
  21. io.write('Введите имя компонента, методы которого нужно узнать: \n>> ')
  22. local name = io.read()
  23. if component.isAvailable(name) then
  24.     t = component.getPrimary(name)
  25.     local filename = name..'_doc.tmp'
  26.     local file = io.open(filename, 'w')
  27.     for k,v in pairs(t) do
  28.         table.insert(methods,'>> Метод: '..k..'\nДокументация: '..tostring(v))
  29.         file:write('>> Метод: '..k..'\nДокументация: '..tostring(v)..'\n')
  30.     end
  31.     file:close()
  32.     if component.isAvailable('internet') then
  33.         print('Перейдите по ссылке на сайт для ознакомления!')
  34.         require('shell').execute('pastebin put '..filename)
  35.         else
  36.             term.clear()
  37.             print('Нажимайте ENTER для продолжения')
  38.             for k,v in pairs(methods) do
  39.                 print('['..k..'] '..v)
  40.                 io.read()
  41.             end
  42.     end
  43. else
  44.     print('Ошибка. Компонента '..name..' не существует!')
  45. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement