Важные обновления lil-terminal: новые рабочие сценарии, изменения совместимости и функции, которые упрощают работу на обычном хостинге, в том числе без SSH.
Опубликовано
Работа с базами данных прямо из lil-terminal
Подключайтесь к MySQL/MariaDB, PostgreSQL, Redis, SQLite и MongoDB без SSH. У каждой системы свой драйвер, а db даёт короткий вход к драйверу, выбранному на текущую сессию.
mysql, postgresql, redis, sqlite и mongodb остаются отдельными модулями, потому что их модели данных различаются. Общими сделаны только естественные действия: подключение, просмотр, поиск, экспорт, запись, создание и восстановление дампов.
Учётные данные вводятся через скрытое поле пароля, а все операции выполняются с правами указанной учётной записи БД. Для рабочего проекта по-прежнему разумно использовать ограниченные права и резервные копии.
Попробовать работу можно без внешнего сервера: установите db и sqlite и откройте пример базы магазина в /sandbox/.
install db sqlite
db sqlite | db -c \sandbox\db\shop.sqlite | db -t | db -n products 5
install mysql postgresql redis mongodb
Опубликовано
Работа с активным файлом без повторения пути
$ указывает на последний открытый, созданный или изменённый файл. Если ввести только имя файла, lil-terminal передаст его подходящему установленному обработчику по расширению.
Например, после mf scratch.json можно продолжить через code $, json $ или del $. Специализированные модули форматов имеют приоритет над общими редакторами, а ввод имени файла сам по себе ничего не устанавливает.
ini, json, xml, yml, toml, conf и properties работают непосредственно со структурированными файлами; img отвечает за просмотр, изменение размера и преобразование обычных изображений. Ставить можно только нужные инструменты.
Эти сокращения относятся к Core. Если старая установка их не понимает, замените её lil.php на текущий Core: upgrade обновляет модули, но не сам файл ядра.
mf scratch.json
code $
app.yml
json $ -f "pass" -k
json $ -w user.password : "Ed1g!fs:13od"
img \sandbox\images\photo.jpg
Опубликовано
Текущий каталог виден ещё до ввода команды
Пока поле команды пустое, оно ненавязчиво показывает текущий рабочий каталог. Поля пароля также показывают подсказку на выбранном языке, не раскрывая само значение.
Подсказка следует за сессией терминала. Если cd или последовательность команд меняет рабочий каталог, следующее пустое поле сразу показывает новый путь. Подсказка не попадает ни в команду, ни в историю.
cd \sandbox
pwd
Опубликовано
@command: выполнить сейчас, установить при необходимости
Добавьте @ перед интерактивной командой: если нужного модуля нет, lil-terminal установит его из стандартного репозитория и сразу выполнит исходную команду.
Если команда уже установлена, она запускается сразу и без обращения к репозиторию. Для отсутствующей команды используется обычный публичный Base-пакет, а вторичные имена вроде @read или @download разрешаются в модуль-владелец.
@command работает только в интерактивном терминале. В .lil-скриптах зависимости остаются явными, чтобы автоматизация была предсказуемой.
@mf notes.txt
@curl https://example.com -I
@read README.md
Опубликовано
Сохранение результата команды в файл через >
Оператор > встроен в Core: результат остаётся на экране и одновременно записывается в файл.
dns google.com > save.log по умолчанию дописывает результат в save.log. Флаг -a явно выбирает дописывание, а -r заменяет файл. Таблицы и другой структурированный вывод перед записью превращаются в читаемый текст.
history-o повторно показывает последний текстовый результат. На компьютере Cmd/Ctrl+S дописывает его в history.log, а Cmd/Ctrl+Shift+S заменяет этот файл через тот же механизм команд.
dns google.com > save.log
dns gmail.com > save.log
dns gmail.com > save.log -r
history -o > history.log -r
Опубликовано
Возможности интерфейса как отдельные пакеты
Браузерные возможности вроде горячих клавиш и редактора кода можно устанавливать и удалять независимо, сохраняя Core и Minimum-пакеты компактными.
include управляет именованными пакетами интерфейса, например lil, hotkeys и code. Base-модули могут подключать нужные браузерные ресурсы, а Minimum-модули остаются без необязательного интерфейсного кода.
Каждый пакет можно отдельно проверить, обновить или удалить. Благодаря этому дополнительные возможности интерфейса больше не обязаны постоянно находиться внутри Core.
include -lil -v 1.0 -s
include -hotkeys -v 1.0 -s
help hotkeys -off
include -code -v 1.0 -i
include -code -v 1.0 -u
Помогите улучшить lil-terminal
Разрешите необязательную аналитику использования страниц, загрузок и документации. Этот слой никогда не собирает пароли, текст обращений и данные терминала. Конфиденциальность