Alex 4 683 Опубликовано: 9 июля, 2015 Очень часто, почти каждый день кто-то спрашивает в чате, как узнать методы компонентов, какие есть методы для работы с МФСУ, реакторами и пр. Написал простенькую функцию для листинга методов на экран или на страничку веб сайта, если у Вас имеется интернет карта в ПК. http://pastebin.com/5nQnM3ED pastebin get 5nQnM3ED viewmethods.lua local component = require("component") local term = require('term') local text = require("text") local components = {} local methods = {} local offset = 0 term.clear() for address, name in component.list() do if name:len() > offset then offset = name:len() end components[address] = name end offset = offset + 2 print(' -------- Найденные компоненты --------') for address, name in pairs(components) do io.write(text.padRight(name, offset) .. address .. '\n') end print(' --------------------------------------') io.write('Введите имя компонента, методы которого нужно узнать: \n>> ') local name = io.read() if component.isAvailable(name) then t = component.getPrimary(name) local filename = name..'_doc.tmp' local file = io.open(filename, 'w') for k,v in pairs(t) do table.insert(methods,'>> Метод: '..k..'\nДокументация: '..tostring(v)) file:write('>> Метод: '..k..'\nДокументация: '..tostring(v)..'\n') end file:close() if component.isAvailable('internet') then print('Перейдите по ссылке на сайт для ознакомления!') require('shell').execute('pastebin put '..filename) else term.clear() print('Нажимайте ENTER для продолжения') for k,v in pairs(methods) do print('['..k..'] '..v) io.read() end end else print('Ошибка. Компонента '..name..' не существует!') end 6 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Quant 442 Опубликовано: 9 июля, 2015 Интересная вещица,надо попробовать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Krutoy 1 169 Опубликовано: 11 июля, 2015 Цвета добавь. Не понятно же, строки сливаются. А вывод таблицей прикольный. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Pofigist 35 Опубликовано: 20 апреля, 2016 А вот у меня вопрос. На компе стоит всего один жесткий диск, но система показывает три компонента filesystem. Откуда еще два? Сначала думал, что один от eeprom, но то отдельный компонент, так что я в недоумении. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Zer0Galaxy 2 187 Опубликовано: 20 апреля, 2016 Некоторые платы, например, интернет-карта имеют свою файловую систему, содержащую нужные утилиты. Подключенные файловые системы и файлы содержащиеся на них можно посмотреть в папке /mnt. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
unknown 23 Опубликовано: 22 апреля, 2016 (изменено) А вот у меня вопрос. На компе стоит всего один жесткий диск, но система показывает три компонента filesystem. Откуда еще два? Сначала думал, что один от eeprom, но то отдельный компонент, так что я в недоумении.Если ещё не забыл, то одна из них – временная фс (`tmp`), а вторая может быть от интернет-платы (только для чтения). Изменено 22 апреля, 2016 пользователем unknown Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
AndyLarkin 3 Опубликовано: 18 февраля, 2018 Методы компонентов можно узнать с помощью утилиты components.components <component_name>(напр. reactor) -l 3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах