2022-02-19 01:40:55 +03:00
|
|
|
:: story: Remove any commit message(s) for a given desk, optionally targeting a specific case or prose
|
2021-11-27 04:53:52 +03:00
|
|
|
::
|
|
|
|
::::
|
|
|
|
::
|
2022-01-25 22:54:55 +03:00
|
|
|
/- *story
|
2021-11-27 04:53:52 +03:00
|
|
|
:- %say
|
|
|
|
|= $: [now=@da eny=@uvJ bec=beak]
|
2022-02-19 02:51:37 +03:00
|
|
|
[[=desk ~] cas=cash prz=prose ~]
|
2021-11-27 04:53:52 +03:00
|
|
|
==
|
|
|
|
::
|
2022-02-06 04:44:26 +03:00
|
|
|
:: XX: story set and story init both have desk and case as optional.
|
|
|
|
:: however, it seems a bit odd to allow both optional here
|
|
|
|
:: since we're dealing with a more hazardous operation.
|
|
|
|
:: should we allow a bare `|story-remove` to remove the last commit message on the current desk?
|
|
|
|
:: leaning towards no, and potentially even making the case non-optional
|
|
|
|
=/ our p.bec
|
2022-02-19 02:20:17 +03:00
|
|
|
=? cas =(*case cas) r.bec :: use case from beak if cas not provided
|
2022-02-22 06:10:22 +03:00
|
|
|
?: !.^(? %cs /(scot %p our)/[desk]/(scot cas)/case)
|
2022-02-19 06:30:24 +03:00
|
|
|
~& >> "Error: invalid case {<cas>} provided"
|
|
|
|
helm-pass+[%d %noop ~]
|
2022-02-19 01:49:17 +03:00
|
|
|
=/ tak
|
|
|
|
?: ?=([%tako tako:clay] cas)
|
|
|
|
p.cas
|
|
|
|
.^(tako:clay %cs /(scot %p our)/[desk]/(scot cas)/tako/~)
|
|
|
|
::
|
2022-02-19 02:51:37 +03:00
|
|
|
=/ pax /(scot %p our)/[desk]/(scot %da now)/story
|
|
|
|
?: !.^(? %cu pax)
|
|
|
|
~& >> "Error: desk {<desk>} does not exist."
|
|
|
|
helm-pass+[%d %noop ~]
|
2022-02-19 02:20:17 +03:00
|
|
|
=/ tale=story .^(story %cx pax)
|
2022-02-06 04:44:26 +03:00
|
|
|
=. tale
|
|
|
|
?: =(*prose prz)
|
|
|
|
(~(del by tale) tak)
|
|
|
|
(~(del ju tale) tak prz)
|
2021-11-27 04:53:52 +03:00
|
|
|
:- %helm-pass
|
2022-02-19 02:51:37 +03:00
|
|
|
[%c [%info desk %& [/story %ins story+!>(tale)]~]]
|