diff --git a/arvo/dill.hoon b/arvo/dill.hoon index f3ce1dd0e7..f414c6f99b 100644 --- a/arvo/dill.hoon +++ b/arvo/dill.hoon @@ -117,7 +117,7 @@ ?+ -.kyz ~& [%strange-kiss -.kyz] +> %flow +> %harm +> - %hail +> + %hail (send %hey ~) %belt (send `dill-belt`p.kyz) %text (from %out (tuba p.kyz)) %crud :: (send `dill-belt`[%cru p.kyz q.kyz]) diff --git a/arvo/zuse.hoon b/arvo/zuse.hoon index 3bca070478..4c64af6fc1 100644 --- a/arvo/zuse.hoon +++ b/arvo/zuse.hoon @@ -2399,6 +2399,7 @@ [%cru p=@tas q=(list tank)] :: echo error [%ctl p=@] :: control-key [%del ~] :: true delete + [%hey ~] :: refresh [%met p=@] :: meta-key [%ret ~] :: return [%rez p=@ud q=@ud] :: resize, cols, rows diff --git a/lib/drum.hoon b/lib/drum.hoon index fed7b848ea..ab6c8528a7 100644 --- a/lib/drum.hoon +++ b/lib/drum.hoon @@ -28,7 +28,6 @@ $: edg=_80 :: terminal columns off=@ud :: window offset kil=(unit (list ,@c)) :: kill buffer - maz=master :: master window inx=@ud :: ring index fug=(map gill (unit target)) :: connections mir=(pair ,@ud (list ,@c)) :: mirrored terminal @@ -69,7 +68,8 @@ =+ myr=(clan our) ?: =(%pawn myr) [[%base %talk] [%base %dojo] ~] - ?: =(%earl myr) ~ + ?: =(%earl myr) + [[%home %dojo] ~] [[%home %talk] [%home %dojo] ~] :: ++ deft-fish :: default connects @@ -77,11 +77,8 @@ %- ~(gas in *(set gill)) ^- (list gill) =+ myr=(clan our) - :: ?: =(%pawn myr) - :: [[our %dojo] ~] ?: =(%earl myr) - =+ dad=(sein our) - [[dad %talk] [dad %dojo] ~] + [[(sein our) %talk] [our %dojo] ~] [[our %talk] [our %dojo] ~] :: ++ deft-mast :: default master @@ -100,7 +97,6 @@ :* 80 :: edg 0 :: off ~ :: kil - (deft-mast our) :: maz 0 :: inx ~ :: fug [0 ~] :: mir @@ -148,39 +144,6 @@ [%pass wire note] :: == :: ++ move (pair bone card) :: user-level move - ++ sp :: command parser - |% ++ sp-ukase - %+ knee *ukase |. ~+ - ;~ pose - (stag %add ;~(pfix lus sp-gills)) - (stag %del ;~(pfix hep sp-gills)) - (stag %new ;~(pfix tar sp-wells)) - == - :: - ++ sp-gills - ;~ pose - (most ;~(plug com ace) sp-gill) - %+ cook - |= a=ship - [[a %talk] [a %dojo] ~] - ;~(pfix sig fed:ag) - == - :: - ++ sp-gill - ;~ pose - (stag our sym) - ;~ plug - ;~(pfix sig fed:ag) - ;~(pfix fas sym) - == - == - ++ sp-well - ;~ pose - ;~(plug sym ;~(pfix fas sym)) - (stag %home sym) - == - ++ sp-wells (most ;~(plug com ace) sp-well) - -- -- |_ [moz=(list move) biz=(list dill-blit)] ++ diff-sole-effect-phat :: @@ -335,11 +298,8 @@ +> =+ gul=se-agon =+ tur=`(unit (unit target))`?~(gul ~ (~(get by fug) u.gul)) - ?: &(!liv.maz |(=(~ gul) =(~ tur) =([~ ~] tur))) (se-blit %bel ~) - =+ ^= taz - ?: liv.maz - ~(. ta [& %& `gill`(fall gul [our %none])] `target`tar.maz) - ~(. ta [& %| (need gul)] `target`(need (need tur))) + ?: |(=(~ gul) =(~ tur) =([~ ~] tur)) (se-blit %bel ~) + =+ taz=~(. ta [& (need gul)] `target`(need (need tur))) =< ta-abet ?- -.bet %aro (ta-aro:taz p.bet) @@ -347,6 +307,7 @@ %cru (ta-cru:taz p.bet q.bet) %ctl (ta-ctl:taz p.bet) %del ta-del:taz + %hey taz(mir [0 ~]) %met (ta-met:taz p.bet) %ret ta-ret:taz %txt (ta-txt:taz p.bet) @@ -372,7 +333,7 @@ =. +>.$ (se-text "[unlinked from {}]") ?: =(gyl [our %dojo]) :: undead dojo (se-link gyl) - se-prom(liv.maz ?~(fug & liv.maz)) + +>.$ :: ++ se-dump :: print tanks |= tac=(list tank) @@ -396,12 +357,12 @@ ^+ +> =. +> (se-text "[linked to {}]") ?> =(~ (~(got by fug) gyl)) - (se-alas:se-prom(liv.maz |, fug (~(put by fug) gyl `*target)) gyl) + (se-alas(fug (~(put by fug) gyl `*target)) gyl) :: ++ se-nuke :: teardown |= gyl=gill ^+ +> - (se-drop:(se-pull(liv.maz |) gyl) & gyl) + (se-drop:(se-pull gyl) & gyl) :: ++ se-like :: act in master |= kus=ukase @@ -446,14 +407,6 @@ ?~ t.yal i.yal :(welp i.yal ", " $(yal t.yal)) :: -++ se-prom :: update drum prompt - ^+ . - =+ mux=se-plot - %_ + - cad.pom.tar.maz - (welp (scow %p our) ?~(mux "# " :(welp ":" mux "# "))) - == -:: ++ se-link :: connect to app |= gyl=gill +>(eel (~(put in eel) gyl)) @@ -477,15 +430,13 @@ (se-show (sub p.lin off) (scag edg (slag off q.lin))) :: ++ se-view :: flush buffer - ?: liv.maz - (se-just ~(ta-vew ta [& & ~zod %$] tar.maz)) =+ gul=se-agon - ?~ gul se-view(liv.maz &) + ?~ gul + =+ gyr=(~(get by fug) u.gul) - ?~ gyr se-view(liv.maz &) - ?~ u.gyr se-view(liv.maz &) + ?~ gyr +> + ?~ u.gyr +> %- se-just - ~(ta-vew ta [& | u.gul] u.u.gyr) + ~(ta-vew ta [& u.gul] u.u.gyr) :: ++ se-emit :: emit move |= mov=move @@ -517,7 +468,7 @@ ++ se-tame :: switch connection |= gyl=gill ^+ ta - ~(. ta [& %| gyl] (need (~(got by fug) gyl))) + ~(. ta [& gyl] (need (~(got by fug) gyl))) :: ++ se-diff :: receive results |= [gyl=gill fec=sole-effect] @@ -526,44 +477,23 @@ :: ++ ta :: per target |_ $: $: liv=? :: don't delete - mav=? :: showing master gyl=gill :: target app == :: target :: target state == :: ++ ta-abet :: resolve ^+ ..ta - =. liv.maz mav - ?: mav - ?. liv - (se-blit `dill-blit`[%qit ~]) - se-prom:+>(tar.maz +<+) ?. liv - =. ..ta (se-nuke gyl) - ..ta(liv.maz =(~ fug)) + ?: (~(has in (deft-fish our)) gyl) + (se-blit qit/~) + (se-nuke gyl) ..ta(fug (~(put by fug) gyl ``target`+<+)) :: ++ ta-poke |=(a=pear +>(..ta (se-poke gyl a))) :: poke gyl - ++ ta-ant :: toggle master - ^+ . - ?: mav - ?: =(~ fug) ta-bel - %_ . - mav | - +<+ (need (~(got by fug) gyl)) - tar.maz +<+ - == - %_ . - mav & - +<+ tar.maz - fug (~(put by fug) gyl `+<+) - == :: ++ ta-act :: send action |= act=sole-action ^+ +> - ?: mav - +>.$ (ta-poke %sole-action act) :: ++ ta-aro :: hear arrow @@ -659,7 +589,7 @@ ta-bel %- ta-hom(pos.inp 0, kil `(scag pos.inp buf.say.inp)) (ta-cut 0 pos.inp) - %v ta-ant + %v ta-bel %x +>(+> se-anon) %y ?~ kil ta-bel %- ta-hom(pos.inp (add pos.inp (lent u.kil))) @@ -768,18 +698,7 @@ +>(pom pom(cad :(welp (scow %p p.gyl) ":" (trip q.gyl) cad.pom))) :: ++ ta-ret :: hear return - ?. mav - (ta-act %ret ~) - =+ txt=(tufa buf.say.inp) - =+ fey=(rose txt sp-ukase:sp) - ?- -.fey - %| (ta-erl (lent (tuba (scag p.fey txt)))) - %& ?~ p.fey - (ta-erl (lent buf.say.inp)) - =. +>+> (se-like u.p.fey) - =. pom pom.tar.maz - (ta-hom:ta-nex %set ~) - == + (ta-act %ret ~) :: ++ ta-ser :: reverse search |= ext=(list ,@c) diff --git a/pub/doc.md b/pub/doc.md deleted file mode 100644 index 1f0a366ca7..0000000000 --- a/pub/doc.md +++ /dev/null @@ -1,14 +0,0 @@ -Urbit Manual -============ - -Urbit is a general-purpose computing stack designed to live in the cloud. - - - -`arvo` is event driven and modular. `arvo` modules are called 'vanes'. - - - ------------------------------------------------------------------------- - -Come join us on `:talk` in the `/urbit-meta` channel to ask questions and get help.