Una vera shell di login,
una per scheda, che sa quale file stai guardando.

Molti editor hanno un pannello di terminale. Due dettagli qui sono più precisi di così: la shell parte nella cartella del file su cui sei, e quando un comando riscrive il file lì sopra, la scheda sa già come comportarsi.

Studio 1.17.1 · macOS 14+8.5 MB da scaricare
Linelark Studio con due terminali affiancati sotto l’editor, uno che compila e uno che elenca la cartella del progetto
Due shell, legate alla cartella del progettoStudio 1.17.1 · macOS 14+

Cosa avvia davvero il pannello, e cosa succede dopo.

Uno pseudo-terminale che esegue la tua shell di login, con un ambiente messo insieme di proposito invece che ereditato in blocco — e una risposta definita per il momento in cui un comando lì dentro cambia il file lì sopra.

01

Parte nella cartella del file

La directory di lavoro è quella del file nella scheda, non la radice del progetto. Se quella cartella è sparita, ripiega sulla cartella aperta, poi sulla tua cartella home. Due schede con file in cartelle diverse danno due shell in posti diversi.

02

Oppure appartiene a una cartella dello spazio di lavoro

Un terminale può essere avviato per una delle radici dello spazio di lavoro invece che per un file, ed è la shell che vuoi per una compilazione o una serie di test. Il pannello chiede cosa intendevi quando la scelta è reale, e permette di passare da una shell già avviata all’altra.

03

Fissare tiene viva una shell oltre la sua scheda

Un terminale di file finisce con la sua scheda, a meno che tu non lo fissi. Una shell fissata continua a girare, e riaprire quel file la recupera invece di avviarne una seconda. Un terminale di progetto è fissato per definizione.

04

Il pannello si divide in un massimo di tre shell

Terminale ▸ Dividi il terminale (⌃⇧5) divide il pannello in colonne come l’editor si divide in riquadri. Una divisione è una seconda shell con lo stesso legame — stesso file, stesso fissaggio, chiusa dalla stessa scheda — avviata nella cartella in cui si trova in quel momento la shell da cui nasce, di solito quella in cui sei appena andato.

05

Una scheda pulita si ricarica, in silenzio

Lancia un formattatore e la scheda si aggiorna. Non chiede, di proposito: una volta che un terminale può scrivere in questi file, una conferma per ogni file significherebbe una valanga di finestre per un comando che hai appena scritto tu.

06

Una scheda con modifiche non salvate non viene mai sovrascritta

Chiede — « modificato sul disco. Questa scheda ha modifiche non salvate. Ricaricare e scartarle? » — con Ricarica e Tieni le mie. Scegliere Tieni le mie sposta avanti la data di modifica registrata, così non richiede per lo stesso cambiamento.

07

La tua shell di login, con -l

La shell viene avviata come shell di login, così ~/.zprofile e compagni vengono letti. Gli strumenti installati da Homebrew o da un gestore di versioni sono nel PATH perché la shell l’ha preparato come fa sempre.

08

TERM e COLORTERM sono impostate come si deve

TERM vale xterm-256color e COLORTERM vale truecolor, così i programmi che controllano prima di emettere colore a 24 bit lo emettono davvero.

09

TERM_PROGRAM dice Linelark

È la variabile che gli strumenti leggono per sapere in quale terminale si trovano, e risponderle onestamente è il modo in cui si adattano correttamente.

10

Linelark_FILE nomina il file in primo piano

La directory di lavoro ha sempre detto solo la cartella. Questa dice quale file, che è ciò che di solito serve a uno strumento da riga di comando.

11

Viene impostata o rimossa, mai ereditata

L’app può essere avviata da una di queste shell. Senza cancellarla, una scheda senza nome erediterebbe un valore vecchio e si spaccerebbe per il file di qualcun altro.

12

Le fughe di debug vengono rimosse

OS_ACTIVITY_DT_MODE e compagni vengono tolti dall’ambiente del processo figlio, altrimenti i programmi avviati da una build di sviluppo credono di essere sotto debug.

L’ambiente con cui parte una shell di Linelark.

Tutto quello che hai già, con questo forzato sopra.

VariabileValore e motivo
TERMxterm-256color — la base che ogni programma curses capisce.
COLORTERMtruecolor — ciò che i programmi controllano prima di usare il colore a 24 bit.
TERM_PROGRAMLinelark — come uno strumento identifica il terminale che lo ospita.
Linelark_FILEIl percorso assoluto del file nella scheda sopra, o niente per una scheda senza nome.
LANGImpostata a en_US.UTF-8 solo quando né LANG né LC_ALL è già definita.
Directory di lavoroLa cartella che contiene il file della scheda, in mancanza la cartella aperta, poi la home.

Letto nel codice pubblicato di Linelark Studio 1.17.1, non nella sua documentazione. Quando i due non concordano, è questo che viene rilasciato.

Prima di farne il tuo unico terminale.

È una shell vera, ma è una shell in un pannello laterale, ed è l’edizione che installi a decidere se esiste.

  • L’edizione App Store non ha il terminaleLe regole della sandbox sotto cui quell’edizione è distribuita non permettono di avviare una shell di login: è quindi escluso del tutto da quella build, insieme a git. Il terminale è una funzione di Studio, e Studio è il download diretto.
  • Tre colonne è il tettoIl pannello si divide in un massimo di tre shell affiancate. iTerm2 e Terminale restano terminali migliori; questo è meglio posizionato.
  • I terminali non vengono salvati con la sessioneUn riavvio comincia senza alcuna shell, e una colonna divisa non viene ripristinata affatto: chiudere il suo riquadro la termina. Il fissaggio sopravvive a una scheda, non alla chiusura dell’app.
  • Un terminale di progetto non si chiude con la sua cartellaChiudere uno spazio di lavoro lascia le sue shell in esecuzione finché non le chiudi a mano, perché un comando in corso non è qualcosa da terminare al posto tuo.
  • Nessun profilo, e nessuna shell che non sia la tuaC’è una sola shell di login, quella con cui è configurato il tuo account. Nulla nel pannello ne sceglie un’altra né conserva un insieme di configurazioni con un nome.
  • Linelark_FILE viene impostata all’avvioUna shell già in esecuzione non viene a sapere di un file che apri dopo: la variabile è stata impostata quando è partita.
  • I cambiamenti esterni vengono notati, non sorvegliati di continuoLe schede pulite vengono aggiornate mentre il terminale è in uso, e la domanda per una scheda modificata arriva quando l’app torna in primo piano. Non è un osservatore del file system che reagisce in pochi millisecondi.
  • Il rilevamento avviene per data di modificaUn cambiamento che lascia intatta la data di modifica non viene rilevato. In pratica significa che gli strumenti comuni sono coperti e la conservazione deliberata delle date no.

Aprilo sui tuoi
file.

Notarizzato da Apple, macOS 14 e versioni successive, Intel e Apple silicon.

Scarica Studio 1.17.1 8.5 MB · tutte le versioni, con le loro impronte