Novità del progetto

Le novità importanti di lil-terminal: nuovi flussi di lavoro, cambiamenti di compatibilità e funzioni che rendono più rapido il lavoro su hosting condiviso.

Pubblico

Lavora con i database direttamente da lil-terminal

Collegati a MySQL/MariaDB, PostgreSQL, Redis, SQLite e MongoDB senza SSH. Ogni motore mantiene il proprio driver, mentre db offre un accesso breve al driver scelto per la sessione.

mysql, postgresql, redis, sqlite e mongodb restano separati perché i loro modelli di dati sono diversi. Condividono solo le azioni davvero comuni: connessione, ispezione, ricerca, esportazione, scrittura, backup e ripristino.

Le credenziali vengono inserite tramite il prompt password nascosto e ogni azione usa i permessi dell’account fornito. In produzione, account limitati e backup restano la scelta più sicura.

Per provare il flusso senza un server esterno, installa db e sqlite e usa il database di esempio in /sandbox/.

install db sqlite
db sqlite | db -c \sandbox\db\shop.sqlite | db -t | db -n products 5
install mysql postgresql redis mongodb
Pubblico

Lavora sul file attivo senza ripetere il percorso

$ indica l’ultimo file aperto, creato o modificato. Un nome file digitato da solo può anche aprirsi con il gestore installato più adatto alla sua estensione.

Dopo mf scratch.json, per esempio, code $, json $ o del $ possono continuare sullo stesso file. I moduli specifici per formato hanno priorità sugli editor generici e digitare un nome file non installa mai automaticamente un modulo.

ini, json, xml, yml, toml, conf e properties lavorano direttamente sui file strutturati; img gestisce ispezione, ridimensionamento e conversione delle immagini più comuni. Installa solo gli strumenti necessari.

Queste scorciatoie appartengono al Core. Se una vecchia installazione non le riconosce, sostituisci il suo lil.php con il Core corrente; upgrade aggiorna i moduli ma non sostituisce il file del Core.

mf scratch.json
code $
app.yml
json $ -f "pass" -k
json $ -w user.password : "Ed1g!fs:13od"
img \sandbox\images\photo.jpg
Pubblico

Vedi la directory corrente prima di digitare

Quando il campo comando è vuoto, mostra in modo discreto la directory di lavoro corrente. Anche i prompt password mostrano un’indicazione localizzata senza rivelare il valore.

L’indicazione segue la sessione del terminale. Dopo cd o una sequenza che cambia directory, il successivo campo vuoto mostra subito il nuovo percorso. È solo un testo indicativo e non entra mai nel comando o nella cronologia.

cd \sandbox
pwd
Pubblico

@command: esegui e installa solo se manca

Aggiungi @ a un comando interattivo: se manca il modulo, lil-terminal lo installa dal repository predefinito e poi esegue il comando richiesto.

Se il comando è già disponibile, viene eseguito subito senza interrogare il repository. I comandi mancanti usano il normale pacchetto Base pubblico; nomi secondari come @read o @download vengono ricondotti al modulo responsabile.

@command è volutamente solo interattivo. Gli script .lil mantengono dipendenze esplicite per rendere prevedibili i flussi automatizzati.

@mf notes.txt
@curl https://example.com -I
@read README.md
Pubblico

Salva il risultato di un comando in un file con >

Un solo operatore del Core mantiene il risultato a schermo e scrive lo stesso testo in un file.

dns google.com > save.log aggiunge il risultato a save.log per impostazione predefinita. -a rende esplicita l’aggiunta e -r sostituisce il file. Tabelle e altri risultati strutturati vengono convertiti in testo leggibile prima della scrittura.

history -o richiama l’ultimo risultato testuale. Su desktop, Cmd/Ctrl+S lo aggiunge a history.log e Cmd/Ctrl+Shift+S sostituisce il file tramite lo stesso meccanismo.

dns google.com > save.log
dns gmail.com > save.log
dns gmail.com > save.log -r
history -o > history.log -r
Pubblico

Funzioni dell’interfaccia come pacchetti opzionali

Funzioni browser come hotkey ed editor di codice possono essere installate e rimosse separatamente, mantenendo piccoli il Core e i pacchetti Minimum.

include gestisce pacchetti di interfaccia nominati come lil, hotkeys e code. I moduli Base possono richiedere le risorse browser corrispondenti, mentre i moduli Minimum restano privi di codice di interfaccia opzionale.

Ogni pacchetto può essere controllato, aggiornato o rimosso singolarmente, quindi le funzioni opzionali non devono più vivere permanentemente nel 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