Skip to content

Commit e6aa1af

Browse files
committed
Переделка на использование КэшаУстановленныхПакетов. Добавлен "тихий" режим, выводящий только список пакетов.
1 parent ae29593 commit e6aa1af

File tree

1 file changed

+13
-18
lines changed

1 file changed

+13
-18
lines changed

src/Классы/ДиспетчерКомандПриложения.os

Lines changed: 13 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@
8181

8282
Процедура ДобавитьКомандуList(Знач Парсер) Экспорт
8383
Команда = Парсер.ОписаниеКоманды("list", "Вывести список пакетов");
84+
Парсер.ДобавитьПараметрФлагКоманды(Команда, "-q", """Тихий"" режим вывода без лишних сообщений.");
8485
Парсер.ДобавитьКоманду(Команда);
8586
КонецПроцедуры
8687

@@ -110,7 +111,7 @@
110111
ИначеЕсли ПараметрыКоманды.Команда = "config" Тогда
111112
НастройкиПриложения.СохранитьНастройки(ЗначенияПараметров);
112113
ИначеЕсли ПараметрыКоманды.Команда = "list" Тогда
113-
ВывестиСписокПакетов();
114+
ВывестиСписокПакетов(ЗначенияПараметров);
114115
ИначеЕсли ПараметрыКоманды.Команда = "help" Тогда
115116
ВывестиСправку(ЗначенияПараметров);
116117
КонецЕсли;
@@ -208,29 +209,23 @@
208209

209210
КонецПроцедуры
210211

211-
Процедура ВывестиСписокПакетов()
212+
Процедура ВывестиСписокПакетов(Знач ЗначенияПараметров)
212213

214+
ТихийРежим = ЗначенияПараметров["-q"];
215+
213216
ПутьККаталогуПакетов = ПолучитьЗначениеСистемнойНастройки("lib.system");
214217

215-
ТекстСообщения = СтрШаблон("Пакеты в системном каталоге библиотек <%1>:", ПутьККаталогуПакетов);
216-
Сообщить(ТекстСообщения);
217-
ВывестиПодкаталоги(ПутьККаталогуПакетов);
218-
219-
ПутьКДополнительнымКаталогамБиблиотек = ПолучитьЗначениеСистемнойНастройки("lib.additional");
220-
Если НЕ ЗначениеЗаполнено(ПутьКДополнительнымКаталогамБиблиотек) Тогда
221-
Возврат;
218+
Если НЕ ТихийРежим Тогда
219+
ТекстСообщения = СтрШаблон("Пакеты в системном каталоге библиотек <%1>:", ПутьККаталогуПакетов);
220+
Сообщить(ТекстСообщения);
222221
КонецЕсли;
223222

224-
СписокДополнительныхКаталоговБиблиотек = СтрРазделить(ПутьКДополнительнымКаталогамБиблиотек, ";");
225-
226-
Для Каждого ДополнительныйКаталогБиблиотек Из СписокДополнительныхКаталоговБиблиотек Цикл
227-
Сообщить("");
228-
Файл_ДополнительныйКаталогБиблиотек = Новый Файл(ДополнительныйКаталогБиблиотек);
229-
ТекстСообщения = СтрШаблон("Пакеты в дополнительном каталоге библиотек <%1>:", Файл_ДополнительныйКаталогБиблиотек.ПолноеИмя);
230-
Сообщить(ТекстСообщения);
231-
ВывестиПодкаталоги(ДополнительныйКаталогБиблиотек);
223+
КэшУстановленныхПакетов = Новый КэшУстановленныхПакетов();
224+
УстановленныеПакеты = КэшУстановленныхПакетов.ПолучитьУстановленныеПакеты();
225+
Для Каждого УстановленныйПакет Из УстановленныеПакеты Цикл
226+
Сообщить(УстановленныйПакет.Ключ);
232227
КонецЦикла;
233-
228+
234229
КонецПроцедуры
235230

236231
Процедура ВывестиПодкаталоги(Знач ПутьКРодительскомуКаталогу)

0 commit comments

Comments
 (0)