Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementing executor #6

Closed
45 tasks
magicant opened this issue Feb 9, 2021 · 1 comment
Closed
45 tasks

Implementing executor #6

magicant opened this issue Feb 9, 2021 · 1 comment
Labels
tracker List of subtasks

Comments

@magicant
Copy link
Owner

magicant commented Feb 9, 2021

This is a tracking issue for implementation of command execution.

Redirections

  • File redirections (<, <>, >, >>, >|)
    • Socket redirections
  • Duplications (<&, >&)
  • Pipes (>>|)
  • Here documents (<<, <<-, <<<)
    • Quoted delimiters and literal here document contents
    • Here document contents that contain escapes and expansions
    • Trimming leading tabs
  • Process redirections (<(foo), >(foo))

Words

  • Backslash escapes
  • Single quotes
  • Double quotes
  • Tilde expansion
  • Backquotes
  • Dollar word units ($...)
    • Parameter expansion without braces ($FOO)
    • Parameter expansion with braces (${FOO})
      • Length (${#foo})
      • Nested expansion (${${foo}})
      • Index (${foo[1]})
      • Standard modifiers (${foo+bar}, ${foo-bar}, ${foo=bar}, ${foo?bar})
      • Colon modifier (${foo:+bar}, ${foo:-bar}, ${foo:=bar}, ${foo:?bar})
      • Standard matching modifiers (${foo#bar}, ${foo##bar}, ${foo%bar}, ${foo%%bar})
      • Non-standard matching modifiers (${foo/bar/baz}, ${foo:/bar/baz}, ${foo/#bar/baz}, ${foo/%bar/baz}, ${foo//bar/baz})
    • Command substitution ($(foo))
    • Arithmetic expansion ($((1+1)))
    • Character expansion ($'\a')

Commands

  • Sequential lists (;)
  • Asynchronous lists (&)
  • And-or lists (&&, ||)
  • Pipelines (|)
  • Simple commands
    • Command word expansion
    • Redirections
    • Assignments
    • Command search
  • Compound commands
    • Braces ({ foo; })
    • Subshells ((foo))
    • For loops
    • While and until loops
    • If conditional constructs
    • Case conditional constructs
    • Double bracket constructs ([[ foo ]])
  • Function definitions
@magicant magicant added the tracker List of subtasks label Jun 27, 2021
@magicant
Copy link
Owner Author

Closing in favor of #51

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tracker List of subtasks
Projects
None yet
Development

No branches or pull requests

1 participant