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 } ; ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! diff --git a/extra/update/update.factor b/extra/update/update.factor index f186837548..9b10ea746f 100644 --- a/extra/update/update.factor +++ b/extra/update/update.factor @@ -1,5 +1,6 @@ USING: kernel system sequences io.files io.launcher bootstrap.image + http.client builder.util builder.release.branch ; IN: update @@ -23,7 +24,7 @@ IN: update : remote-clean-image ( -- url ) "http://factorcode.org/images/clean/" my-boot-image-name append ; -: download-clean-image ( -- ) { "wget" remote-clean-image } run-command ; +: download-clean-image ( -- ) remote-clean-image download ; ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!