diff --git a/extra/shell/shell.factor b/extra/shell/shell.factor index 57a7a7a327..7f30104e21 100644 --- a/extra/shell/shell.factor +++ b/extra/shell/shell.factor @@ -1,7 +1,7 @@ USING: kernel parser words continuations namespaces debugger - sequences combinators prettyprint - system io io.files io.launcher sequences.deep + sequences combinators splitting prettyprint + system io io.files io.launcher io.encodings.utf8 sequences.deep accessors multi-methods newfx shell.parser ; IN: shell @@ -44,6 +44,19 @@ METHOD: expand { glob-expr } METHOD: expand { factor-expr } expr>> eval unparse ; +DEFER: expansion + +METHOD: expand { back-quoted-expr } + expr>> + expr + ast>> + command>> + expansion + utf8 + contents + " \n" split + "" remove ; + METHOD: expand { object } ; ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!