Commit Graph

651 Commits

Author SHA1 Message Date
Jan Nieuwenhuizen 795b059373 Add -e, -x options. Use -x for running tests. 2018-07-04 06:58:01 +02:00
Jan Nieuwenhuizen 503be95f97 test: Updates. 2018-07-03 22:18:05 +02:00
Jan Nieuwenhuizen 61ee206b8d softcode --debug levels. 2018-07-03 21:07:21 +02:00
Jan Nieuwenhuizen cda9eda403 implement set -x. 2018-07-03 20:56:03 +02:00
Jan Nieuwenhuizen f047fd2d2a exit: new builtin. 2018-07-03 20:56:03 +02:00
Jan Nieuwenhuizen c4ea4457f9 implement set -e. 2018-07-03 20:56:03 +02:00
Jan Nieuwenhuizen 567170d226 variables: use string for key, value. 2018-07-03 20:20:04 +02:00
Jan Nieuwenhuizen b01c5da8ac Revert "non builtin hax0r"
This reverts commit 29a54650ab.
2018-07-03 19:59:52 +02:00
Jan Nieuwenhuizen 867d83bb69 gash -c COMMAND: exit status fix0r 2018-07-03 06:39:02 +02:00
Rutger van Beusekom 29a54650ab non builtin hax0r 2018-07-02 20:18:59 +02:00
Rutger van Beusekom 4ef3a941aa WIP: status:exit-val 2018-07-02 20:05:50 +02:00
Rutger van Beusekom 054db72e94 WILDE PETS 2018-07-02 19:55:19 +02:00
Jan Nieuwenhuizen 462f8ce95f handle exit stati WIP 2018-07-02 19:11:06 +02:00
Jan Nieuwenhuizen d79936f561 Refactor builtin commands.
* gash/gash.scm (main): Handle --prefer-builtins.
  (display-help): Mention it.
  (bg-command, cd-command, echo-command, pwd-command, fg-command): New
  functions.
  (%commands): New variable.
  (builtin): Use it.
2018-07-02 19:02:52 +02:00
Rutger van Beusekom 01bfb484dc allow reserved words "everywhere" 2018-07-02 08:39:24 +02:00
Rutger van Beusekom 32f1d25170 add -c STRING 2018-07-02 08:35:10 +02:00
Rutger van Beusekom e3d564fc4c fix spawn to use no input or just the first 2018-07-01 14:04:23 +02:00
Jan Nieuwenhuizen 1b56f8cb2f BUGS: New file. Fixed one. 2018-06-30 07:08:39 +02:00
Jan Nieuwenhuizen 1562ef93cb guix: Propagate guile-readline.
* guix.scm (gash): Propagate guile-readline.
2018-06-30 06:37:20 +02:00
Jan Nieuwenhuizen a14c7c7360 Use pretty-print to display error tree.
* gash/peg.scm (parse): Use pretty-print to display error tree.
  (parse-): Likewise.
2018-06-30 06:36:54 +02:00
Jan Nieuwenhuizen fbe9747d00 guix: Add guix package build.
* guix.scm: New file.
2018-06-29 20:19:49 +02:00
Jan Nieuwenhuizen 7b9871478b build: add ./configure, compile .go files.
* configure: New file.
* build-aux/build-guile.sh: New file.
* makefile (all-go): New target.
2018-06-29 20:18:02 +02:00
Jan Nieuwenhuizen cd4a80d3cb build: add makefile, build bin/gash
* bin/gash.in: New file.
* bin/gash: Remove
* makefile: New file.
2018-06-29 20:18:02 +02:00
Jan Nieuwenhuizen df4f7971aa updates from verum/gaiag. 2018-06-29 20:18:02 +02:00
Rutger van Beusekom ca01e904d3 generalize pipe for multiple in- and out-puts 2018-02-22 16:17:43 +01:00
Rutger van Beusekom b6c566e989 support scheme in the pipeline 2018-02-17 21:15:41 +01:00
Timothy Sample 69c3f9e6ad Add parser
* geesh/parser.scm: New file.
* tests/parser.scm: New file.
* Makefile.am: Add them.
* .dir-locals.el: New file. Include indenting rules for Shell AST
forms and 'call-with-backquoted-input-port'.
2018-02-01 00:14:12 -05:00
Timothy Sample 95181a98b5 Add lexer
* geesh/lexer.scm: New file.
* tests/lexer.scm: New file.
* Makefile.am: Add them.
2018-01-31 15:09:51 -05:00
Timothy Sample cdded95d88 Initial commit 2018-01-31 14:52:05 -05:00
Rutger van Beusekom 9856ad7619 fix builtins 2017-12-07 23:07:31 +01:00
Rutger van Beusekom f171f79ec9 substitution 2017-12-07 23:07:31 +01:00
Rutger van Beusekom 2446a63281 catch all errors 2017-12-07 23:07:31 +01:00
Rutger van Beusekom 6e556508f5 checkpoint 2017-12-07 23:07:31 +01:00
Rutger van Beusekom e31829a757 substitution 2017-12-07 23:07:31 +01:00
Rutger van Beusekom e348606d36 testing 2017-12-07 23:07:31 +01:00
Rutger van Beusekom 57b93d2902 substitution WIP 2017-12-07 23:07:31 +01:00
Rutger van Beusekom 0a75234e52 complete rename from anguish to gash 2017-12-07 23:07:31 +01:00
Rutger van Beusekom 1bfb752b3c split off job 2017-12-07 23:07:30 +01:00
Rutger van Beusekom bb68e4728c split off util 2017-12-07 23:07:30 +01:00
Rutger van Beusekom 6b3351aa8a split off io 2017-12-07 23:07:30 +01:00
Rutger van Beusekom 34737293ef here document 2017-12-07 23:07:30 +01:00
Rutger van Beusekom 2a1431da56 refactor 2017-12-07 23:07:30 +01:00
Rutger van Beusekom a0b61a24df for-clause idiosynchrasies 2017-12-07 23:07:30 +01:00
Rutger van Beusekom b35876f4d9 checkpoint: glob/regex fix, wip: 2nd prompt continuation, cleanups 2017-12-07 23:07:30 +01:00
Rutger van Beusekom 1a42685197 generalized gash for any call location 2017-12-07 23:07:30 +01:00
Rutger van Beusekom 559322ff5a hacked 2nd prompt for incomplete inputs. 2017-12-07 23:07:30 +01:00
Rutger van Beusekom fc081e9c2b update peg for substitution in for and identifier reserved prefix 2017-12-07 23:07:30 +01:00
Rutger van Beusekom 2e3b805f6a introduce gash 2017-12-07 23:07:30 +01:00
Rutger van Beusekom 88a14cd2ae fix globbing 2017-12-07 23:07:30 +01:00
Rutger van Beusekom 33131a6aed completion 2017-12-07 23:07:30 +01:00