Argument mode vs Expression mode

Open
#151 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
20/100
Issue type
Refactor
Clarity
Needs clarification
Activity status
Stale
Tech stack
powershell
Domain
tooling

Research direction

No files or tests are named. Start by reviewing the repository’s current syntax matches alongside PowerShell’s About Parsing reference and related issue #137. The work is done when argument mode and expression mode consistently scope operators, parameters, commands, and line continuations.

Written by the indexing model from the issue text.

Description

For reference: Powershell Docs: About Parsing

The current syntax does not take in to account PowerShell's parsing, argument mode vs expression mode.

Lacking this is causing scoping of some operators when they should not be treated as such, and failure to scope operators when they should be treated as such, or properly scoping parameter tags vs commands that start with a '-', ect...

This actually would be a pretty large undertaking. It would probably go along with #137

This would probably require a reorganization of all the matches in to the repository, with the base match limited to just scanning the first token using a BEGIN with a forward lookup to sort out whether to run in expression or argument mode, ENDing at anywhere a line continuation isn't permitted, or otherwise at the end of a command (pipe, ';', etc) and this would require than any scoping that allows line continuation must also use BEGIN type matches to keep the parsing moving. The '&' could be a bit tricky, as it can be both the start of a command and the end of a command.

Dominant language
PowerShell
Stars
151
Forks
55
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from PowerShell/EditorSyntax

All issues in PowerShell/EditorSyntax

Similar issues

More DevTools issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.