Commit Graph

  • 9e810a5929 Builtins: Added a hack so that builtins would behave correctly no matter if they're called from eval or execute master Sekulum Forka 2021-05-18 15:01:13 +0200
  • 75819e9abc Let: Let works now, somehow. I fixed a bunch of things but this cart is still fundimentaly broken Sekulum Forka 2021-05-17 19:14:31 +0200
  • c2ba92518e Builtins: set now puts the variables in the most local frame by default Sekulum Forka 2021-05-17 17:13:58 +0200
  • 3d7bf1029e Variables: evalVariables goes threw the frames in the right order now (from the most local frame to the global one) Sekulum Forka 2021-05-17 17:06:37 +0200
  • 8c48eb9057 Variables: The 0th frame is the global one, the next few ommits make it so Sekulum Forka 2021-05-17 17:02:51 +0200
  • 2a732eb569 Variables: Added frames with shit performance Sekulum Forka 2021-05-17 16:58:14 +0200
  • eff52bf920 Variables: 2 dollarsignsin a row are equal to a single dollarsign now Sekulum Forka 2021-05-16 16:50:19 +0200
  • 0d8354ddd9 Prompt: Added a prompt (Still buggy a little if it contains dollarsigns) Sekulum Forka 2021-05-16 16:47:09 +0200
  • ef34936d29 builtins: Added cd Sekulum Forka 2021-05-16 16:18:39 +0200
  • 472ecf7b25 builtins: Added an if command Sekulum Forka 2021-05-15 13:31:16 +0200
  • 7b0dec7084 Builtins, exec / eval: Builtins can return statuses now, not used at all now though Sekulum Forka 2021-05-14 18:57:44 +0200
  • 4cd90e368c Eval execute: They now ignore empty commands or commands that only contain a single empty string Sekulum Forka 2021-05-14 17:28:11 +0200
  • 8e21117986 Ctrl-C: Handles sigint much more elegantly Sekulum Forka 2021-05-13 22:40:06 +0200
  • 87982fdcbc Exceptions: Add an exception for ^c Sekulum Forka 2021-05-13 22:05:15 +0200
  • 5116918ff2 Exceptions: Raising code uses proper constructers now Sekulum Forka 2021-05-13 15:44:07 +0200
  • 43ac1b6e04 Exceptions: Refactoring exception making code Sekulum Forka 2021-05-13 15:26:14 +0200
  • adf612effd Eval / execute: Raise a ShellCommandError if command is not available Sekulum Forka 2021-05-13 14:17:12 +0200
  • ad3568d785 Builtins: setenv: Raises a ShellCommandError incase of lack of arguments Sekulum Forka 2021-05-13 13:36:38 +0200
  • 285eb06f0e Builtins: set: Throws an exception if not enough arguments are provided Sekulum Forka 2021-05-13 11:27:53 +0200
  • aa528eb717 evalVariable: Thows ShellVariableError if no variable is found Sekulum Forka 2021-05-13 11:25:28 +0200
  • cdae96263b Exceptions: Make better exception types Sekulum Forka 2021-05-13 11:19:39 +0200
  • fb7b46fca6 eval and execute: Automatically skips over empty commands (those that parse command interprets as empty lists) Sekulum Forka 2021-05-12 22:19:26 +0200
  • 69a96bda1b eval and execute: If a builtin has been found, continue onto the next command instead of executing the program by the same name Sekulum Forka 2021-05-12 22:16:15 +0200
  • 226c44c99c parseCommand: Spaces at the beginning of a command should no longer make the shell crash Sekulum Forka 2021-05-12 22:12:58 +0200
  • 9568721c82 exec: Exec can now execute multiple commands at once Sekulum Forka 2021-05-12 21:07:12 +0200
  • a83e5d3c79 eval: Eval can now evaluate multiple commands at once Sekulum Forka 2021-05-12 21:04:29 +0200
  • 15df6c4a82 Merge branch 'master' of https://gitea.com/seculumforka/fsh Sekulum Forka 2021-05-12 16:11:48 +0200
  • 5ebbc60ccb Builtins: Added the exit builtin Sekulum Forka 2021-05-12 15:43:40 +0200
  • 23592c5e15 Builtins: Added set, setenv, and echo builtins Sekulum Forka 2021-05-12 14:44:24 +0200
  • b1c9159155 Substitute and parseCommand: The now recognise variables and deal with them as needed Sekulum Forka 2021-05-11 18:38:32 +0200
  • d502efaeb1 Substitute and parseCommand: The now recognise variables and deal with them as needed Sekulum Forka 2021-05-11 18:38:32 +0200
  • 8a5e6c3cea Variables: Added a readVariable and evalVariable procedures Sekulum Forka 2021-05-11 18:31:02 +0200
  • c00678603b imports: Removed the needless strutils module Sekulum Forka 2021-05-11 15:52:13 +0200
  • bdb77b272a Main loop: Execute is now called instead of eval Sekulum Forka 2021-05-11 11:05:35 +0200
  • 4db9a4d831 eval and execute: Changed how they work. Main difference is that eval returns the output of the function while execute merges the parent process's and child process's stdstreams Sekulum Forka 2021-05-11 10:27:40 +0200
  • 36d2b8e03a second commit Sekulum Forka 2021-05-10 22:22:20 +0200
  • b662afe779 Initial commit seculumforka 2021-05-11 17:49:34 +0800