Kako radi, dio po dio
Jedno pravilo drži cijeli program na okupu: stanje prozora živi u memoriji, a konfiguracija u datotekama. Sve što slijedi proizlazi iz toga.
Pravilo koje stoji iza svega
Prozor drži kartice. Kartica drži blokove. Blok je terminal, datoteka koja se uređuje, ploča datoteka, web-stranica, slika, PDF, stranica Markdown, diff, monitor sustava, zaslon postavki ili ploča dodatka. Dijele se u bilo kojem smjeru s ugnježđivanjem, povlače, mijenjaju veličinu i zatvaraju prema jednom skupu pravila, a ne novom skupu za svaku novu značajku. Sve što je preveliko da bi pripadalo svima dodatak je iz vlastitog kataloga vobude, zasad Design i Director, instaliran i uklonjen u cijelosti jednim pritiskom.
Ništa od tog rasporeda nije pohranjeno u bazi podataka, jer baza podataka ne postoji. Ono što prozor radi živi u memoriji; ono što ste odlučili živi u datotekama. Zato gumb, tipka, traka izbornika, Cmd+K i naredbeni redak svi pozivaju istu radnju po imenu, i zato promjena ponašanja gotovo uvijek znači uređivanje JSON-a.
Zato je i najbolji terminalski emulator za Mac, za ovakvu vrstu posla za koju je izrađen, upravo onaj koji možete pregledati. Ako postavka postoji, postoji redak u datoteci koji je sadrži. Ako radnja postoji, postoji ime kojim je možete pozvati.
Pet načina do radnje, i to je uvijek ista radnja
Uz ovoliko radnji većina je programa u praksi skrivena. Cmd+K je put koji odgovara na pitanje „što zna“, a ne na naredbu „učini ovo“.
-
Uči tipke umjesto da ih zamjenjuje
Svaki redak prikazuje svoj tipkovni prečac. Osoba koja dvaput posegne za popisom zbog iste radnje do trećeg puta nauči tipku.
-
Nije peti rječnik
Svaki redak pokreće radnju po imenu, jednako kao i preostala četiri načina. Provjera usklađuje tablicu iz koje se popunjava s jezgrinim popisom onoga na što se tipka smije vezati, u oba smjera: radnja koja postoji, a nije ondje ponuđena, ruši izgradnju.
-
Naredbeni redak je isti skup
vobuda do block.split-down, vobuda button files, vobuda theme catppuccin-mocha, vobuda send, vobuda signal, vobuda state, vobuda log, utipkano u bilo kojem bloku vobude, a
vobuda mcpnudi agentu iste naredbe kao MCP alate. Nisu sporedna vrata za skripte: testovi sučelja preko njih pokreću cijeli program, zato im se može vjerovati i zato agent može preurediti vaš prozor, a vi možete pročitati što je točno učinio.
Blokovi, i što obećavaju
Blok mijenja karticu dok mu ljuska i dalje radi
Povucite blok za zaglavlje na karticu u traci i on tamo sleti: isti id, ista ljuska, ista mapa, i dalje pokreće što god je pokretao. Kartica zasvijetli naglasnom bojom dok se blok nalazi iznad nje. Postoji i radnja za to, block.to-tab:2, pa se može vezati na tipku, a provjera bez miša je može pokrenuti.
Veličine se pamte, i postoji donja granica
Za svaki blok posebno, a nijedan blok ne smije postati toliko uzak da postane neupotrebljiv. Panel širine 200 točaka je panel koji nitko ne može koristiti.
Ništa vaše ne nestaje neprimjetno
Zatvaranje nečega što radi najprije pita, po imenu, jer jednom izgubljen tuđi rad košta više povjerenja nego što cijela značajka zaradi. Iz istog se razloga mapa projekta sprema kao snimka prije svakog agentova kruga, s jednim pritiskom za vraćanje; ključ zalijepljen agentu zaustavlja se prije nego što ga agent vidi; a ograda koju možete uključiti odbija agentova pisanja i brisanja izvan projekta.
Sesije se vraćaju prema zadanim postavkama
Kartice, blokovi i radna mapa svakog bloka vraćaju se nakon ponovnog pokretanja, a to je prema zadanim postavkama uključeno; jedan prekidač u odjeljku Općenito to isključuje. Sesija koja je stigla s drugog računala otvara što može i kaže što nije mogla, umjesto da neprimjetno izostavi blokove.
Mapa s postavkama, datoteka po datoteka
Sve u ~/.config/vobuda je čitljiv JSON, koji se prati dok program radi. Spremite datoteku i prozor se ponovno iscrta.
| Datoteka | Što sadrži |
|---|---|
| settings.json | Tema, izgled, terminal, ljuska, prozor, signali: svaka postavka deset odjeljaka |
| themes/*.json | Boje terminala i prozora. Dolazi 25 paleta, dvije izrađene za osobe s poremećajem raspoznavanja boja |
| looks/*.json | Oblik prozora: kutovi, sjene, boje ploča, prozirnost. Isporučuje se 29 |
| skins/*.json | Koji se paneli nadzora prikazuju i kako |
| buttons.json | Dok: gumbi, redoslijed, strana, oblik, i boja za one rijetke koje vrijedi istaknuti |
| agents.json | Kako se agent prepoznaje i što mu se nudi |
| keys.json | Svaki tipkovni prečac. Izvorni macOS izbornik izgrađen je iz iste te datoteke |
| workspaces/*.json | Projekti: svaki kao prozor s vlastitim karticama, mapom, temom i dockom |
Ugrađene teme žive unutar samog programa, a mapa ih nadjačava, pa ažuriranje donosi nove boje ne prepisujući ništa što ste uređivali. Cijela se mapa sprema kao jedna arhiva i vraća na drugom Macu, a na Macu kopija živi u iCloud Driveu, prema zadanim postavkama uključena, s jednim prekidačem koji je isključuje.
Sustav za nadzor, raspoređen datotekom
Dvanaest vrsta ploča, a koje vidite, određuje skin, a ne zaslon koji je netko jednom osmislio.
-
Brojevi su iskreni prema sebi samima
Vrijednost koju sustav procjenjuje, a ne mjeri, prikazuje se s tildom, a nepostojeći hardver daje odsutnu vrijednost, a ne nulu. Računalo bez zasebne grafičke kartice ne dobiva panel GPU-a koji pokazuje nula posto.
-
Obje adrese, svaka sa svojim gumbom za kopiranje
Ploča adresa prvo navodi adresu koju vidi internet, a ispod nje onu koju računalo ima na vlastitoj mreži. Pita samo dok je ploča na zaslonu, otprilike jednom u deset minuta, ili svakih trideset sekundi dok adresa još nije poznata, a zahtjev ne nosi ništa o računalu.
-
Redoslijed se mijenja povlačenjem, kao i sve ostalo
Paneli nadzora, gumbi doka i dijelovi trake agenta podižu se i postavljaju na svoje mjesto istim pokretom. Redak postavke se podiže za ručku s lijeve strane, a ne bilo gdje na retku, pa povlačenje koje počinje na tekstualnom polju ne sprječava odabir riječi koju ste namjeravali promijeniti.
Datoteka se otvara uz ljusku
Ono zbog čega vas terminal obično šalje negdje drugdje: u ispisu se pojavi putanja, treba promijeniti dva retka, a do sada je to značilo otići u uređivač i vratiti se izgubivši kontekst ljuske.
-
Spremanje je namjerno
Ništa se ne zapisuje dok ne pritisnete Cmd+S. Uređivač koji piše dok tipkate dobro je rješenje u aplikaciji za bilješke, a loše uz ljusku koja je pokrenuta. To je radnja, a ne pritisak tipke, pa stoga ima i stavku u izborniku, tipkovni prečac i unos u naredbenom retku, kao i sve ostalo ovdje.
-
Odbijanja su jednako važna kao i pisanje
Datoteka promijenjena na disku nakon otvaranja se ne prepisuje. Binarna datoteka se ne prikazuje kao unakaženi tekst. Mapa se uopće ne otvara. Nespremljene promjene nose vidljivu oznaku, a zatvaranje uređene datoteke pita za potvrdu.
-
Pronalaženje datoteke
Panel s datotekama pretražuje po imenu unutar mape u kojoj se nalazite, a svaki rezultat navodi u kojim se dvjema mapama nalazi, jer samo ime ne može razlikovati dvije datoteke index.ts. Preskače node_modules, .git, target i slično, staje na osam razina ili dvjesto rezultata, i ne radi ništa pri manje od dva slova.
Postavke, kao zaslon i kao datoteke
Deset odjeljaka, od Općenito do Podaci i privatnost, pretraživanje po svakoj postavci, a svaka je redak u datoteci koju možete uređivati i ručno.
-
Postavke dolaze do bloka
Desni klik na ploču znači „ovu stvar ovdje, promijeni je“. Zato odabir retka postavki u izborniku samog bloka otvara taj odjeljak nad prozorom, u kutu izbornika, umjesto da vas vodi na zaslon postavki. To je radnja kao i sve ostalo: settings.here:themes, settings.here:monitor.
-
Zvuk koji čujete čim ga odaberete
Odabir zvuka signala ili zvona terminala odmah ga i pušta. Biranje zvuka s popisa imena koje ne možete čuti je biranje imena, a ne zvuka.
-
Ništa ne traži ponovno pokretanje
Mapa s postavkama se prati, uključujući i dvije stvari koje pripadaju jezgri: macOS traku izbornika izgrađenu iz vaše datoteke s prečacima, i globalnu tipku padajućeg prozora, gdje se stara tipka oslobađa prije nego što se registrira nova, kako dvije ne bi mogle odgovoriti istovremeno. Provjera čita svaki savjet na zaslonu s postavkama i propada na riječi ponovno pokretanje.
Govor i čitanje naglas
Oboje koristi vlastiti govor sustava, na vašem računalu. Zvuk nikad ne napušta računalo.
Diktiranje
Cmd+Shift+V upisuje što izgovorite u blok u kojem radite, a traka u dva slova javlja na kojem jeziku sluša. Izdiktirana fraza se upisuje i nikad se sama ne pokreće: prepoznavanje ponekad krivo čuje, a naredba koja se sama pokrene nakon krivog razumijevanja je program koji briše stvari jer je radio bio uključen. Uz agenta, gdje je fraza poruka, a ne naredba, ona se može sama poslati, a to je postavka koja se čita u trenutku kad fraza završi.
Čitanje odgovora naglas
Cmd+Shift+R čita posljednji odgovor agenta naglas; ponovni pritisak ga zaustavlja. Čita se odgovor, a ne zaslon. Grafička točka na početku, zvjezdice oko naglašene riječi, obrnuti navodnici oko imena, crta okvira, puna putanja tamo gdje bi bilo dovoljno ime datoteke - sve to nestaje, a riječi unutar toga ostaju. Čitanje je omeđeno oblicima, a ne riječima, odozdo retkom za unos agenta, a odozgo njegovim logotipom, jer se izgled agenta mijenja sa svakim njegovim izdanjem.
Sitnice koje odlučuju hoćete li ga zadržati
Desni gumb je naš
Posvuda u prozoru: vlastiti izbornik bloka unutar bloka, vanjski izbornik prozora, traka kartica, dok, razmak između pločica. Svaki redak je radnja, a i sam izbornik ima svoju radnju, block.menu, pa pokret koji dosegne samo ruka nije pokret koji ništa ne može provjeriti. Jedino mjesto koje zadržava sustavski izbornik je tekstualno polje, gdje nudi izreži, kopiraj, zalijepi i rječnik.
Otvorite mapu odakle god želite
vobuda://open?path=/some/path otvara karticu u toj mapi, bilo iz radnje u Finderu, skripte ili druge aplikacije. macOS nema sustavsku postavku zadanog terminala, pa je ovo iskrena verzija te značajke, a ne obećanje koje se ne može ispuniti.
Pretraga unutar bloka
Cmd+F. Polje pripada bloku koji pretražuje, a zatvaranje ga ostavlja prikaz na mjestu gdje je bilo podudaranje.
Ponesite blok sa sobom
Cmd+Shift+X kopira tekst bloka, koji traži sam terminal, zbog čega radi i s uključenim iscrtavanjem na GPU-u, gdje na stranici nema teksta za odabir. Slika bloka dvije su radnje u Cmd+K, Snimka bloka u međuspremnik i Snimka bloka u datoteku.
Provjere ažuriranja koje nisu domaća zadaća
Jezgra provjerava jednom dnevno, u vlastitoj niti, a ono što vidite traka je iznad rasporeda, a ne preko njega, jer je obavijest koja prekriva terminal ona koju ljudi nauče zatvarati nepročitanu. Ništa se ne instalira dok ne pritisnete: za agenta je ažuriranje naredba utipkana u aktivni blok gdje je vidljiv njezin izlaz, a za Vobudu na Macu gumb instalira novu verziju u pozadini, zatim nudi ponovno pokretanje, koje se samo dogodi nakon deset sekundi kad ništa ne radi.
Četrdeset jezika, i vodič na svakom
Uključujući macOS traku izbornika, koju sustav izgrađuje unutar jezgre. Arapski i hebrejski zrcale cijeli prozor osim samog terminala, gdje bi zrcaljenje učinilo ispis i putanje nečitljivima. Ključ prijevoda je engleski izvorni niz, pa se neprevedeni niz vraća na čitljiv engleski umjesto na prazninu ili identifikator.
Isprobajte dijelove o kojima ste upravo pročitali
Nakon dva kratka pitanja pri prvom pokretanju otvara se s jednim terminalskim blokom i ničim drugim. Sve navedeno gore uključujete kad to poželite.
curl -fsSL https://vobuda.com/install.sh | sh