View difference between Paste ID: YEhjRTMF and 5nQnM3ED
SHOW: | | - or go back to the newest paste.
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