chat-cli: support per-target glyph unbinding
[%leave target] :: nuke target
::
[%bind glyph target] :: bind glyph
- [%unbind glyph] :: unbind glyph
+ [%unbind glyph (unit target)] :: unbind glyph
[%what (unit $@(char target))] :: glyph lookup
::
[%settings ~] :: show active settings
:: +unbind-glyph: remove all binding for glyph
::
++ unbind-glyph
- |= =glyph ::TODO do we really not want this optionally per-target?
+ |= [=glyph targ=(unit target)]
^- (quip move _this)
+ ?^ targ
+ =. binds (~(del ju binds) glyph u.targ)
+ =. bound (~(del by bound) u.targ)
+ [(show-glyph:sh-out glyph ~) this]
=/ ole=(set target)
(~(get ju binds) glyph)
=. binds (~(del by binds) glyph)
;~((glue ace) (tag %leave) targ)
::
;~((glue ace) (tag %bind) glyph targ)
- ;~((glue ace) (tag %unbind) glyph)
+ ;~((glue ace) (tag %unbind) ;~(plug glyph (punt ;~(pfix ace targ))))
;~(plug (perk %what ~) (punt ;~(pfix ace ;~(pose glyph targ))))
::
;~(plug (tag %settings) (easy ~))
:_ [prompt ~]
%- note
%+ weld "set: {[glyph ~]} "
- ?~ target "nothing"
+ ?~ target "unbound"
~(phat tr u.target)
--
::
