mirror of
https://github.com/ilyakooo0/urbit.git
synced 2024-11-28 19:55:53 +03:00
Removed remote mirrors (federation) from agent's shell.
Now passing ++sh tale knots instead of being specified within shell.
This commit is contained in:
parent
7d8e0e8e33
commit
6a15fb2cab
@ -31,21 +31,16 @@
|
|||||||
++ tale :: user-facing story
|
++ tale :: user-facing story
|
||||||
$: count/@ud :: (lent grams)
|
$: count/@ud :: (lent grams)
|
||||||
grams/(list telegram) :: all history
|
grams/(list telegram) :: all history
|
||||||
locals/atlas :: local presence
|
locals/atlas :: presence
|
||||||
shape/config :: configuration
|
shape/config :: configuration
|
||||||
known/(map serial @ud) :: messages heard
|
known/(map serial @ud) :: messages heard
|
||||||
== ::
|
== ::
|
||||||
::TODO do away with most of shell state, it's largely a mirror of tale..?
|
::TODO do away with most of shell state, it's largely a mirror of tale..?
|
||||||
++ shell :: console session
|
++ shell :: console session
|
||||||
$: her/ship :: client identity
|
$: id/bone :: identifier
|
||||||
id/bone :: identifier
|
|
||||||
man/knot :: mailbox
|
|
||||||
count/@ud :: messages shown
|
count/@ud :: messages shown
|
||||||
say/sole-share :: console state
|
say/sole-share :: console state
|
||||||
active/(set partner) :: active targets
|
active/(set partner) :: active targets
|
||||||
owners/register :: presence mirror
|
|
||||||
harbor/(map knot (pair posture cord)) :: stations mirror
|
|
||||||
system/cabal :: config mirror
|
|
||||||
settings/(set knot) :: frontend settings
|
settings/(set knot) :: frontend settings
|
||||||
== ::
|
== ::
|
||||||
:: ::
|
:: ::
|
||||||
@ -165,7 +160,7 @@
|
|||||||
%+ turn (~(tap by nek))
|
%+ turn (~(tap by nek))
|
||||||
|= {a/char b/(set (set partner))}
|
|= {a/char b/(set (set partner))}
|
||||||
(turn (~(tap by b)) |=(c/(set partner) [c a]))
|
(turn (~(tap by b)) |=(c/(set partner) [c a]))
|
||||||
sh-abet:~(sh-prod sh ~ cli)
|
sh-abet:~(sh-prod sh ~ cli (main our.hid)) ::TODO mailbox not used
|
||||||
::
|
::
|
||||||
++ ra-diff-talk-lowdown-names
|
++ ra-diff-talk-lowdown-names
|
||||||
::x apply new local identities.
|
::x apply new local identities.
|
||||||
@ -191,7 +186,8 @@
|
|||||||
::
|
::
|
||||||
|= tals/(map knot (unit config))
|
|= tals/(map knot (unit config))
|
||||||
^+ +>
|
^+ +>
|
||||||
::TODO for every config, (sh-repo-config-show "" oldconfig newconfig)
|
::TODO for every changed config, (sh-low-config oldconfig newconfig)
|
||||||
|
:: maybe something else for new/removed tales?
|
||||||
%= +> tales
|
%= +> tales
|
||||||
%+ roll (~(tap by tals))
|
%+ roll (~(tap by tals))
|
||||||
|= {t/(pair knot (unit config)) tas/_tales}
|
|= {t/(pair knot (unit config)) tas/_tales}
|
||||||
@ -209,7 +205,7 @@
|
|||||||
^+ +>
|
^+ +>
|
||||||
=+ tal=(~(get by tales) man)
|
=+ tal=(~(get by tales) man)
|
||||||
?~ tal ~&([%know-no-tale man] +>.$)
|
?~ tal ~&([%know-no-tale man] +>.$)
|
||||||
=. +>.$ sh-abet:(~(sh-low-precs sh ~ cli) locals.u.tal pes)
|
=. +>.$ sh-abet:(~(sh-low-precs sh ~ cli man) locals.u.tal pes)
|
||||||
+>.$(tales (~(put by tales) man u.tal(locals pes)))
|
+>.$(tales (~(put by tales) man u.tal(locals pes)))
|
||||||
::
|
::
|
||||||
++ ra-diff-talk-lowdown-grams
|
++ ra-diff-talk-lowdown-grams
|
||||||
@ -219,7 +215,7 @@
|
|||||||
^+ +>
|
^+ +>
|
||||||
=+ tal=(~(get by tales) man)
|
=+ tal=(~(get by tales) man)
|
||||||
?~ tal ~&([%know-no-tale man] +>.$)
|
?~ tal ~&([%know-no-tale man] +>.$)
|
||||||
=. +>.$ sh-abet:(~(sh-low-grams sh ~ cli) num gams)
|
=. +>.$ sh-abet:(~(sh-low-grams sh ~ cli man) num gams)
|
||||||
pa-abet:(~(pa-lesson pa man u.tal) gams)
|
pa-abet:(~(pa-lesson pa man u.tal) gams)
|
||||||
::
|
::
|
||||||
++ ra-emil :: ra-emit move list
|
++ ra-emil :: ra-emit move list
|
||||||
@ -242,7 +238,8 @@
|
|||||||
?. =(id.cli ost.hid)
|
?. =(id.cli ost.hid)
|
||||||
~& %strange-sole
|
~& %strange-sole
|
||||||
!!
|
!!
|
||||||
sh-abet:(~(sh-sole sh ~ cli) act)
|
::TODO but there's not actually a tale to specify. mailbox is "fake"!
|
||||||
|
sh-abet:(~(sh-sole sh ~ cli (main our.hid)) act)
|
||||||
::
|
::
|
||||||
++ ra-console
|
++ ra-console
|
||||||
::x make a shell for her.
|
::x make a shell for her.
|
||||||
@ -257,8 +254,8 @@
|
|||||||
{@ta $~} i.pax
|
{@ta $~} i.pax
|
||||||
==
|
==
|
||||||
=/ she/shell
|
=/ she/shell
|
||||||
%*(. *shell her her, man man, id ost.hid, active (sy [%& our.hid man] ~))
|
%*(. *shell id ost.hid, active (sy [%& our.hid man] ~))
|
||||||
sh-abet:~(sh-prod sh ~ she)
|
sh-abet:~(sh-prod sh ~ she man)
|
||||||
::
|
::
|
||||||
++ ra-init
|
++ ra-init
|
||||||
::x populate state on first boot. subscribes to our broker.
|
::x populate state on first boot. subscribes to our broker.
|
||||||
@ -383,6 +380,7 @@
|
|||||||
::
|
::
|
||||||
coz/(list command)
|
coz/(list command)
|
||||||
she/shell
|
she/shell
|
||||||
|
man/knot
|
||||||
==
|
==
|
||||||
++ sh-scad :: command parser
|
++ sh-scad :: command parser
|
||||||
::x builds a core with parsers for talk-cli, and produces its work arm.
|
::x builds a core with parsers for talk-cli, and produces its work arm.
|
||||||
@ -418,7 +416,7 @@
|
|||||||
::
|
::
|
||||||
++ stan :: station
|
++ stan :: station
|
||||||
;~ pose
|
;~ pose
|
||||||
(cold [our.hid man.she] col)
|
(cold [our.hid (main our.hid)] col)
|
||||||
;~(pfix cen (stag our.hid sym))
|
;~(pfix cen (stag our.hid sym))
|
||||||
;~(pfix fas (stag (sein our.hid) sym))
|
;~(pfix fas (stag (sein our.hid) sym))
|
||||||
::
|
::
|
||||||
@ -593,7 +591,7 @@
|
|||||||
=+ cha=(~(get by nik) q.rew)
|
=+ cha=(~(get by nik) q.rew)
|
||||||
?^ cha ~[u.cha ' ']
|
?^ cha ~[u.cha ' ']
|
||||||
:: ~& [rew nik nak]
|
:: ~& [rew nik nak]
|
||||||
=+ por=~(te-prom te man.she q.rew)
|
=+ por=~(te-prom te man q.rew)
|
||||||
(weld `tape`[p.p.rew por] `tape`[q.p.rew ' ' ~])
|
(weld `tape`[p.p.rew por] `tape`[q.p.rew ' ' ~])
|
||||||
::
|
::
|
||||||
++ sh-pact :: update active aud
|
++ sh-pact :: update active aud
|
||||||
@ -612,7 +610,7 @@
|
|||||||
::
|
::
|
||||||
|= paz/(set partner)
|
|= paz/(set partner)
|
||||||
?: (sh-pear paz) paz
|
?: (sh-pear paz) paz
|
||||||
(~(put in paz) [%& our.hid man.she])
|
(~(put in paz) [%& our.hid (main our.hid)])
|
||||||
::
|
::
|
||||||
++ sh-pear :: hearback
|
++ sh-pear :: hearback
|
||||||
::x produces true if any partner is included in our subscriptions,
|
::x produces true if any partner is included in our subscriptions,
|
||||||
@ -620,20 +618,22 @@
|
|||||||
::
|
::
|
||||||
|= paz/(set partner)
|
|= paz/(set partner)
|
||||||
?~ paz |
|
?~ paz |
|
||||||
|
::TODO hoon does short-circuiting, right? do the has first, then recurse.
|
||||||
?| $(paz l.paz)
|
?| $(paz l.paz)
|
||||||
$(paz r.paz)
|
$(paz r.paz)
|
||||||
(~(has in sources.shape:(~(got by tales) man.she)) `partner`n.paz)
|
(~(has in sources.shape:(~(got by tales) man)) `partner`n.paz)
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
++ sh-pest :: report listen
|
++ sh-pest :: report listen
|
||||||
::x updates audience to be tay, only if tay is not a village/%white.
|
::x updates audience to be tay, only if tay is not a village/%white.
|
||||||
::x? why exclude village (invite-only?) audiences from this?
|
::x? why exclude village (invite-only?) audiences from this?
|
||||||
::
|
::
|
||||||
|
::TODO does this still do the correct thing?
|
||||||
|= tay/partner
|
|= tay/partner
|
||||||
^+ +>
|
^+ +>
|
||||||
?. ?=($& -.tay) +> ::x if partner is a passport, do nothing.
|
?. ?=($& -.tay) +> ::x if partner is a passport, do nothing.
|
||||||
=+ sib=(~(get by ham.system.she) `station`p.tay) ::x get config for tay
|
=+ tal=(~(get by tales) q.p.tay)
|
||||||
?. |(?=($~ sib) !?=($white p.cordon.u.sib))
|
?. |(?=($~ tal) !?=($white p.cordon.shape.u.tal))
|
||||||
+>.$
|
+>.$
|
||||||
(sh-pact [tay ~ ~])
|
(sh-pact [tay ~ ~])
|
||||||
::
|
::
|
||||||
@ -642,7 +642,7 @@
|
|||||||
::x and updates the selected audience to match the telegram's.
|
::x and updates the selected audience to match the telegram's.
|
||||||
::
|
::
|
||||||
|= gam/telegram
|
|= gam/telegram
|
||||||
=+ lin=~(tr-line tr man.she settings.she gam)
|
=+ lin=~(tr-line tr man settings.she gam)
|
||||||
(sh-fact %txt lin)
|
(sh-fact %txt lin)
|
||||||
::
|
::
|
||||||
++ sh-numb :: print msg number
|
++ sh-numb :: print msg number
|
||||||
@ -664,7 +664,7 @@
|
|||||||
?: =(~ lax) ~ ::x no partner.
|
?: =(~ lax) ~ ::x no partner.
|
||||||
?: ?=({* $~ $~} lax) `n.lax ::x single partner.
|
?: ?=({* $~ $~} lax) `n.lax ::x single partner.
|
||||||
::x in case of multiple partners, pick the most recently active one.
|
::x in case of multiple partners, pick the most recently active one.
|
||||||
=+ grams=grams:(~(got by tales) man.she)
|
=+ grams=grams:(~(got by tales) man) ::TODO probably no longer correct.
|
||||||
|- ^- (unit (set partner))
|
|- ^- (unit (set partner))
|
||||||
?~ grams ~
|
?~ grams ~
|
||||||
::x get first partner from a telegram's audience.
|
::x get first partner from a telegram's audience.
|
||||||
@ -672,39 +672,6 @@
|
|||||||
?: (~(has in lax) pan) `pan
|
?: (~(has in lax) pan) `pan
|
||||||
$(grams t.grams)
|
$(grams t.grams)
|
||||||
::
|
::
|
||||||
::TODO can we really not do some shenanigans to make a generic maps diff?
|
|
||||||
:: that way we could do rogue- cabal- and house- diffs in one arm.
|
|
||||||
:: you want to be able to indicate return type based on map contents...
|
|
||||||
++ sh-repo-house-diff
|
|
||||||
::x calculates difference between two shelves (channel definitions).
|
|
||||||
::
|
|
||||||
|= {one/shelf two/shelf}
|
|
||||||
=| $= ret
|
|
||||||
$: old/(list (pair knot (pair posture cord)))
|
|
||||||
new/(list (pair knot (pair posture cord)))
|
|
||||||
cha/(list (pair knot (pair posture cord)))
|
|
||||||
==
|
|
||||||
^+ ret
|
|
||||||
=. ret
|
|
||||||
=+ eno=(~(tap by one))
|
|
||||||
|- ^+ ret
|
|
||||||
?~ eno ret
|
|
||||||
=. ret $(eno t.eno)
|
|
||||||
=+ unt=(~(get by two) p.i.eno)
|
|
||||||
?~ unt
|
|
||||||
ret(old [i.eno old.ret])
|
|
||||||
?: =(q.i.eno u.unt) ret
|
|
||||||
ret(cha [[p.i.eno u.unt] cha.ret])
|
|
||||||
=. ret
|
|
||||||
=+ owt=(~(tap by two))
|
|
||||||
|- ^+ ret
|
|
||||||
?~ owt ret
|
|
||||||
=. ret $(owt t.owt)
|
|
||||||
?: (~(has by one) p.i.owt)
|
|
||||||
ret
|
|
||||||
ret(new [i.owt new.ret])
|
|
||||||
ret
|
|
||||||
::
|
|
||||||
++ sh-repo-atlas-diff
|
++ sh-repo-atlas-diff
|
||||||
::x calculates the difference between two atlasses (presence lists).
|
::x calculates the difference between two atlasses (presence lists).
|
||||||
::
|
::
|
||||||
@ -741,67 +708,6 @@
|
|||||||
ret
|
ret
|
||||||
ret
|
ret
|
||||||
::
|
::
|
||||||
++ sh-repo-cabal-diff
|
|
||||||
::x calculates the difference between two cabals (station configurations)
|
|
||||||
::
|
|
||||||
|= {one/(map station config) two/(map station config)}
|
|
||||||
=| $= ret
|
|
||||||
$: old/(list (pair station config))
|
|
||||||
new/(list (pair station config))
|
|
||||||
cha/(list (pair station config))
|
|
||||||
==
|
|
||||||
^+ ret
|
|
||||||
=. ret
|
|
||||||
=+ eno=(~(tap by one))
|
|
||||||
|- ^+ ret
|
|
||||||
?~ eno ret
|
|
||||||
=. ret $(eno t.eno)
|
|
||||||
=+ unt=(~(get by two) p.i.eno)
|
|
||||||
?~ unt
|
|
||||||
ret(old [i.eno old.ret])
|
|
||||||
?: =(q.i.eno u.unt) ret
|
|
||||||
ret(cha [[p.i.eno u.unt] cha.ret])
|
|
||||||
=. ret
|
|
||||||
=+ owt=(~(tap by two))
|
|
||||||
|- ^+ ret
|
|
||||||
?~ owt ret
|
|
||||||
=. ret $(owt t.owt)
|
|
||||||
?: (~(has by one) p.i.owt)
|
|
||||||
ret
|
|
||||||
ret(new [i.owt new.ret])
|
|
||||||
ret
|
|
||||||
::
|
|
||||||
++ sh-repo-rogue-diff
|
|
||||||
::x calculates the difference between two maps of stations and their
|
|
||||||
::x presence lists.
|
|
||||||
::
|
|
||||||
|= {one/(map partner atlas) two/(map partner atlas)}
|
|
||||||
=| $= ret
|
|
||||||
$: old/(list (pair partner atlas))
|
|
||||||
new/(list (pair partner atlas))
|
|
||||||
cha/(list (pair partner atlas))
|
|
||||||
==
|
|
||||||
^+ ret
|
|
||||||
=. ret
|
|
||||||
=+ eno=(~(tap by one))
|
|
||||||
|- ^+ ret
|
|
||||||
?~ eno ret
|
|
||||||
=. ret $(eno t.eno)
|
|
||||||
=+ unt=(~(get by two) p.i.eno)
|
|
||||||
?~ unt
|
|
||||||
ret(old [i.eno old.ret])
|
|
||||||
?: =(q.i.eno u.unt) ret
|
|
||||||
ret(cha [[p.i.eno u.unt] cha.ret])
|
|
||||||
=. ret
|
|
||||||
=+ owt=(~(tap by two))
|
|
||||||
|- ^+ ret
|
|
||||||
?~ owt ret
|
|
||||||
=. ret $(owt t.owt)
|
|
||||||
?: (~(has by one) p.i.owt)
|
|
||||||
ret
|
|
||||||
ret(new [i.owt new.ret])
|
|
||||||
ret
|
|
||||||
::
|
|
||||||
++ sh-set-diff
|
++ sh-set-diff
|
||||||
::x calculates the difference between two sets,
|
::x calculates the difference between two sets,
|
||||||
::x returning what was lost in old and what was gained in new.
|
::x returning what was lost in old and what was gained in new.
|
||||||
@ -849,12 +755,12 @@
|
|||||||
|- ^+ +>.^$
|
|- ^+ +>.^$
|
||||||
?~ old +>.^$
|
?~ old +>.^$
|
||||||
=. +>.^$ $(old t.old)
|
=. +>.^$ $(old t.old)
|
||||||
(sh-note (weld pre "off {~(ta-full ta man.she i.old)}"))
|
(sh-note (weld pre "off {~(ta-full ta man i.old)}"))
|
||||||
=. +>.$
|
=. +>.$
|
||||||
|- ^+ +>.^$
|
|- ^+ +>.^$
|
||||||
?~ new +>.^$
|
?~ new +>.^$
|
||||||
=. +>.^$ $(new t.new)
|
=. +>.^$ $(new t.new)
|
||||||
(sh-note (weld pre "hey {~(ta-full ta man.she i.new)}"))
|
(sh-note (weld pre "hey {~(ta-full ta man i.new)}"))
|
||||||
+>.$
|
+>.$
|
||||||
::
|
::
|
||||||
++ sh-repo-config-show
|
++ sh-repo-config-show
|
||||||
@ -867,88 +773,25 @@
|
|||||||
(sh-note :(weld pre "cap " (trip caption.loc)))
|
(sh-note :(weld pre "cap " (trip caption.loc)))
|
||||||
=. +>.$
|
=. +>.$
|
||||||
%+ sh-repo-config-sources
|
%+ sh-repo-config-sources
|
||||||
(weld (trip man.she) ": ")
|
(weld (trip man) ": ")
|
||||||
(sh-set-diff sources.laz sources.loc)
|
(sh-set-diff sources.laz sources.loc)
|
||||||
?: !=(p.cordon.loc p.cordon.laz)
|
?: !=(p.cordon.loc p.cordon.laz)
|
||||||
=. +>.$ (sh-note :(weld pre "but " (sh-puss p.cordon.loc)))
|
=. +>.$ (sh-note :(weld pre "but " (sh-puss p.cordon.loc)))
|
||||||
%^ sh-repo-config-exceptions
|
%^ sh-repo-config-exceptions
|
||||||
(weld (trip man.she) ": ")
|
(weld (trip man) ": ")
|
||||||
p.cordon.loc
|
p.cordon.loc
|
||||||
[~ (~(tap in q.cordon.loc))]
|
[~ (~(tap in q.cordon.loc))]
|
||||||
%^ sh-repo-config-exceptions
|
%^ sh-repo-config-exceptions
|
||||||
(weld (trip man.she) ": ")
|
(weld (trip man) ": ")
|
||||||
p.cordon.loc
|
p.cordon.loc
|
||||||
(sh-set-diff q.cordon.laz q.cordon.loc)
|
(sh-set-diff q.cordon.laz q.cordon.loc)
|
||||||
::
|
::
|
||||||
++ sh-repo-cabal-changes
|
++ sh-low-config
|
||||||
::x used by ++sh-repo-cabal for printing cabal config changes to cli.
|
|
||||||
::
|
|
||||||
|= $: laz/(map station config)
|
|
||||||
old/(list (pair station config))
|
|
||||||
new/(list (pair station config))
|
|
||||||
cha/(list (pair station config))
|
|
||||||
==
|
|
||||||
=. +>.$
|
|
||||||
|- ^+ +>.^$
|
|
||||||
?~ new +>.^$
|
|
||||||
=. +>.^$ $(new t.new)
|
|
||||||
=. +>.^$ (sh-pest [%& p.i.new])
|
|
||||||
%+ sh-repo-config-show
|
|
||||||
(weld ~(sn-phat sn man.she p.i.new) ": ")
|
|
||||||
[*config q.i.new]
|
|
||||||
=. +>.$
|
|
||||||
|- ^+ +>.^$
|
|
||||||
?~ cha +>.^$
|
|
||||||
=. +>.^$ $(cha t.cha)
|
|
||||||
%+ sh-repo-config-show
|
|
||||||
(weld ~(sn-phat sn man.she p.i.cha) ": ")
|
|
||||||
[(~(got by laz) `station`p.i.cha) q.i.cha]
|
|
||||||
+>.$
|
|
||||||
::
|
|
||||||
++ sh-repo-cabal
|
|
||||||
::x updates the current shell's cabal and prints changes to cli.
|
::x updates the current shell's cabal and prints changes to cli.
|
||||||
::
|
::
|
||||||
|= bal/cabal
|
|= {old/config new/config}
|
||||||
^+ +>
|
^+ +>
|
||||||
=+ laz=system.she
|
(sh-repo-config-show "" old new)
|
||||||
=. system.she bal
|
|
||||||
=. +>.$
|
|
||||||
%+ sh-repo-cabal-changes ham.laz
|
|
||||||
(sh-repo-cabal-diff ham.laz ham.bal)
|
|
||||||
(sh-repo-config-show "" loc.laz loc.bal)
|
|
||||||
::
|
|
||||||
++ sh-repo-house
|
|
||||||
::x applies new shelf ("house"?) and prints changes to cli.
|
|
||||||
::
|
|
||||||
|= awl/shelf
|
|
||||||
^+ +>
|
|
||||||
~& [%sh-repo-house awl]
|
|
||||||
=+ dif=(sh-repo-house-diff harbor.she awl)
|
|
||||||
=. harbor.she awl
|
|
||||||
=. +>.$
|
|
||||||
|- ^+ +>.^$
|
|
||||||
?~ old.dif +>.^$
|
|
||||||
=. +>.^$ $(old.dif t.old.dif)
|
|
||||||
(sh-note "cut {(sh-puss p.q.i.old.dif)} %{(trip p.i.old.dif)}")
|
|
||||||
=. +>.$
|
|
||||||
|- ^+ +>.^$
|
|
||||||
?~ new.dif +>.^$
|
|
||||||
=. +>.^$ $(new.dif t.new.dif)
|
|
||||||
=+ :* nam=(trip p.i.new.dif)
|
|
||||||
por=(sh-puss p.q.i.new.dif)
|
|
||||||
des=(trip q.q.i.new.dif)
|
|
||||||
==
|
|
||||||
(sh-note "new {por} %{nam}: {des}")
|
|
||||||
=. +>.$
|
|
||||||
|- ^+ +>.^$
|
|
||||||
?~ cha.dif +>.^$
|
|
||||||
=. +>.^$ $(cha.dif t.cha.dif)
|
|
||||||
=+ :* nam=(trip p.i.cha.dif)
|
|
||||||
por=(sh-puss p.q.i.cha.dif)
|
|
||||||
des=(trip q.q.i.cha.dif)
|
|
||||||
==
|
|
||||||
(sh-note "mod %{nam}: {por}, {des}")
|
|
||||||
+>.$
|
|
||||||
::
|
::
|
||||||
++ sh-note :: shell message
|
++ sh-note :: shell message
|
||||||
::x prints a txt to cli in talk's format.
|
::x prints a txt to cli in talk's format.
|
||||||
@ -1002,56 +845,6 @@
|
|||||||
=+ dif=(sh-repo-atlas-diff old new)
|
=+ dif=(sh-repo-atlas-diff old new)
|
||||||
(sh-repo-group-diff-here "" dif)
|
(sh-repo-group-diff-here "" dif)
|
||||||
::
|
::
|
||||||
++ sh-repo-group-here :: update local
|
|
||||||
::x updates local presence store and prints changes.
|
|
||||||
::
|
|
||||||
|= loc/atlas
|
|
||||||
^+ +>
|
|
||||||
=+ cul=(sh-repo-atlas-diff p.owners.she loc)
|
|
||||||
=. p.owners.she loc
|
|
||||||
(sh-repo-group-diff-here "" cul)
|
|
||||||
::
|
|
||||||
++ sh-repo-group-there :: update foreign
|
|
||||||
::x updates remote presences(?) and prints changes.
|
|
||||||
::
|
|
||||||
|= yid/(map partner atlas)
|
|
||||||
=+ day=(sh-repo-rogue-diff q.owners.she yid)
|
|
||||||
=+ dun=q.owners.she
|
|
||||||
=. q.owners.she yid
|
|
||||||
?: (~(has in settings.she) %quiet)
|
|
||||||
+>.$
|
|
||||||
=. +>.$
|
|
||||||
|- ^+ +>.^$
|
|
||||||
?~ old.day +>.^$
|
|
||||||
=. +>.^$ $(old.day t.old.day)
|
|
||||||
(sh-note (weld "not " (~(ta-show ta man.she p.i.old.day) ~)))
|
|
||||||
=. +>.$
|
|
||||||
|- ^+ +>.^$
|
|
||||||
?~ new.day +>.^$
|
|
||||||
=. +>.^$ $(new.day t.new.day)
|
|
||||||
=. +>.^$
|
|
||||||
(sh-note (weld "new " (~(ta-show ta man.she p.i.new.day) ~)))
|
|
||||||
(sh-repo-group-diff-here "--" ~ (~(tap by q.i.new.day)) ~)
|
|
||||||
=. +>.$
|
|
||||||
|- ^+ +>.^$
|
|
||||||
?~ cha.day +>.^$
|
|
||||||
=. +>.^$ $(cha.day t.cha.day)
|
|
||||||
=. +>.^$
|
|
||||||
(sh-note (weld "for " (~(ta-show ta man.she p.i.cha.day) ~)))
|
|
||||||
=+ yez=(~(got by dun) p.i.cha.day)
|
|
||||||
%+ sh-repo-group-diff-here "--"
|
|
||||||
(sh-repo-atlas-diff yez q.i.cha.day)
|
|
||||||
+>.$
|
|
||||||
::
|
|
||||||
++ sh-repo-group
|
|
||||||
::x update local and remote presences.
|
|
||||||
::
|
|
||||||
|= ges/register
|
|
||||||
^+ +>
|
|
||||||
=. +> (sh-repo-group-here p.ges)
|
|
||||||
=. +> (sh-repo-group-there q.ges)
|
|
||||||
+>
|
|
||||||
::
|
|
||||||
++ sh-low-gram
|
++ sh-low-gram
|
||||||
::x renders telegram: increase gram count and print the gram.
|
::x renders telegram: increase gram count and print the gram.
|
||||||
::x every fifth gram, prints the number.
|
::x every fifth gram, prints the number.
|
||||||
@ -1194,7 +987,7 @@
|
|||||||
::
|
::
|
||||||
|= job/work
|
|= job/work
|
||||||
^+ +>
|
^+ +>
|
||||||
=+ roy=(~(got by tales) man.she)
|
=+ roy=(~(got by tales) man)
|
||||||
=< work
|
=< work
|
||||||
|%
|
|%
|
||||||
++ work
|
++ work
|
||||||
@ -1223,7 +1016,7 @@
|
|||||||
++ activate :: from %number
|
++ activate :: from %number
|
||||||
|= gam/telegram
|
|= gam/telegram
|
||||||
^+ ..sh-work
|
^+ ..sh-work
|
||||||
=+ tay=~(. tr man.she settings.she gam)
|
=+ tay=~(. tr man settings.she gam)
|
||||||
=. ..sh-work (sh-fact tr-fact:tay)
|
=. ..sh-work (sh-fact tr-fact:tay)
|
||||||
sh-prod(active.she tr-pals:tay)
|
sh-prod(active.she tr-pals:tay)
|
||||||
::
|
::
|
||||||
@ -1257,17 +1050,17 @@
|
|||||||
?^ - (sh-note "has glyph {<u>}")
|
?^ - (sh-note "has glyph {<u>}")
|
||||||
=+ cha=(glyph (mug pan))
|
=+ cha=(glyph (mug pan))
|
||||||
(sh-note:(set-glyph cha pan) "new glyph {<cha>}")
|
(sh-note:(set-glyph cha pan) "new glyph {<cha>}")
|
||||||
=+ loc=loc.system.she
|
=+ loc=shape:(~(got by tales) man)
|
||||||
::x change local mailbox config to include subscription to pan.
|
::x change local mailbox config to include subscription to pan.
|
||||||
%^ sh-tell %design man.she
|
%^ sh-tell %design man
|
||||||
`loc(sources (~(uni in sources.loc) pan))
|
`loc(sources (~(uni in sources.loc) pan))
|
||||||
::
|
::
|
||||||
++ leave :: %leave
|
++ leave :: %leave
|
||||||
|= pan/(set partner)
|
|= pan/(set partner)
|
||||||
^+ ..sh-work
|
^+ ..sh-work
|
||||||
=+ loc=loc.system.she
|
=+ loc=shape:(~(got by tales) man)
|
||||||
::x change local mailbox config to exclude subscription to pan.
|
::x change local mailbox config to exclude subscription to pan.
|
||||||
%^ sh-tell %design man.she
|
%^ sh-tell %design man
|
||||||
`loc(sources (~(dif in sources.loc) pan))
|
`loc(sources (~(dif in sources.loc) pan))
|
||||||
::
|
::
|
||||||
++ what :: %what
|
++ what :: %what
|
||||||
@ -1282,17 +1075,23 @@
|
|||||||
::
|
::
|
||||||
++ who :: %who
|
++ who :: %who
|
||||||
|= pan/(set partner) ^+ ..sh-work
|
|= pan/(set partner) ^+ ..sh-work
|
||||||
=< (sh-fact %mor (murn (sort (~(tap by q.owners.she) ~) aor) .))
|
::TODO clever use of =< and . take note!
|
||||||
|= {pon/partner alt/atlas} ^- (unit sole-effect)
|
::TODO test/fix/update
|
||||||
?. |(=(~ pan) (~(has in pan) pon)) ~
|
=< (sh-fact %mor (murn (sort (~(tap by tales) ~) aor) .))
|
||||||
=- `[%tan rose+[", " `~]^- leaf+~(ta-full ta man.she pon) ~]
|
|= {nam/knot tal/tale}
|
||||||
=< (murn (sort (~(tap by alt)) aor) .)
|
~
|
||||||
|= {a/ship b/presence c/human} ^- (unit tank) :: XX names
|
::=< (sh-fact %mor (murn (sort (~(tap by q.owners.she) ~) aor) .))
|
||||||
?- b
|
::|= {pon/partner alt/atlas} ^- (unit sole-effect)
|
||||||
$gone ~
|
::?. |(=(~ pan) (~(has in pan) pon)) ~
|
||||||
$hear `>a<
|
::=- `[%tan rose+[", " `~]^- leaf+~(ta-full ta man.she pon) ~]
|
||||||
$talk `>a< :: XX difference
|
::=< (murn (sort (~(tap by alt)) aor) .)
|
||||||
==
|
::|= {a/ship b/presence c/human} ^- (unit tank)
|
||||||
|
::::TODO print human names.
|
||||||
|
::?- b
|
||||||
|
:: $gone ~
|
||||||
|
:: $hear `>a<
|
||||||
|
:: $talk `>a< :: XX difference
|
||||||
|
::==
|
||||||
::
|
::
|
||||||
++ bind :: %bind
|
++ bind :: %bind
|
||||||
|= {cha/char pan/(unit (set partner))} ^+ ..sh-work
|
|= {cha/char pan/(unit (set partner))} ^+ ..sh-work
|
||||||
@ -1330,7 +1129,7 @@
|
|||||||
::x create new config for channel.
|
::x create new config for channel.
|
||||||
%^ sh-tell %design nom
|
%^ sh-tell %design nom
|
||||||
:- ~
|
:- ~
|
||||||
:+ *(set partner)
|
:+ [[%& our.hid nom] ~ ~]
|
||||||
(end 3 64 txt)
|
(end 3 64 txt)
|
||||||
[por ~]
|
[por ~]
|
||||||
(join [[%& our.hid nom] ~ ~])
|
(join [[%& our.hid nom] ~ ~])
|
||||||
@ -1411,7 +1210,7 @@
|
|||||||
::TODO !!!!!
|
::TODO !!!!!
|
||||||
|= num/$@(@ud {p/@u q/@ud})
|
|= num/$@(@ud {p/@u q/@ud})
|
||||||
^+ ..sh-work
|
^+ ..sh-work
|
||||||
=+ roy=(~(got by tales) man.she)
|
=+ roy=(~(got by tales) man) ::TODO see above
|
||||||
|-
|
|-
|
||||||
?@ num
|
?@ num
|
||||||
?: (gte num count.roy)
|
?: (gte num count.roy)
|
||||||
|
Loading…
Reference in New Issue
Block a user