-
Notifications
You must be signed in to change notification settings - Fork 498
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
Add #Requires snippets #1974
Add #Requires snippets #1974
Conversation
These look good to be included in the extension! |
572df38
to
8d8390f
Compare
@travis-c-lagrone we'd still like to include these in the extension itself, if you're interested! |
@TylerLeonhardt I am still interested! My apologies for the confusion. For some reason I thought it had already been merged, and so I was just cleaning up. It is restored and reopened now. |
35e763a
to
244c902
Compare
Seems like this would be better implemented via auto-completion? I know PowerShell doesn't support completion of |
@SydneyhSmith and @TylerLeonhardt, may I please have a new code review? I had to recreate the snippets after I had accidentally deleted my copy of the branch, but I did it slightly differently (I think better) this time around. |
I don't disagree with you there. However, unless you (or someone else) can implement PowerShell completion of the script requirement directive syntax anytime soon, I would argue that these snippets provide value in the indefinite meantime. |
Adds the following snippets (listed by name, not prefix): - Requires Assembly - Requires Assembly Path - Requires Assembly Version - Requires Module - Requires Module RequiredVersion - Requires Module Version - Requires PSEdition - Requires PSSnapin - Requires PSSnapin Version - Requires RunAsAdministrator - Requires ShellId - Requires Version
244c902
to
b34ab49
Compare
…rsion" and "Requires Module Version"
…intellisense is implemented
@rkeithhill Now that "JSON with Comments" is supported for this snippets file, I added a comment noting that the "Requires *" snippets should be removed if-and-when the relevant intellisense is implemented. |
* Add script requirement directive snippets Adds the following snippets (listed by name, not prefix): - Requires Assembly - Requires Assembly Path - Requires Assembly Version - Requires Module - Requires Module RequiredVersion - Requires Module Version - Requires PSEdition - Requires PSSnapin - Requires PSSnapin Version - Requires RunAsAdministrator - Requires ShellId - Requires Version
* Edit snippets to support $TM_SELECTED_TEXT (#1945) Edit all-and-only applicable snippets to support $TM_SELECTED_TEXT, where "applicable" is approximated by whether a snippet contains a user-specified PowerShell expression, block, or body. Do not add, remove, or otherwise change any placeholder number or name in order to preserve backwards-compatibility. Edit the following snippets (listed by name, not prefix): - Class - Constructor - Method - Enum - Cmdlet - Function-Advanced - DSC Resource Provider (class-based) - DSC Resource Provider (function-based) - comment block - do-until - do-while - while - for - for-reversed - foreach - function - Function-Inline - if - elseif - else - switch - try-catch - try-catch-finally - try-finally - Workflow - Workflow ForEachParallel - Workflow InlineScript - Workflow Parallel - Workflow Sequence - Region Block - IfShouldProcess - CalculatedProperty - PesterDescribeContextIt - PesterDescribeBlock - PesterContextIt - PesterContext - PesterIt * Add ArgumentCompleter snippets (#1946) * Define snippet named 'ArgumentCompleterAttribute with ScriptBlock' * Define snippet named 'IArgumentCompleter Class' * Define snippet named 'ArgumentCompleterAttribute ScriptBlock' * Add #Requires snippets (#1974) * Add script requirement directive snippets Adds the following snippets (listed by name, not prefix): - Requires Assembly - Requires Assembly Path - Requires Assembly Version - Requires Module - Requires Module RequiredVersion - Requires Module Version - Requires PSEdition - Requires PSSnapin - Requires PSSnapin Version - Requires RunAsAdministrator - Requires ShellId - Requires Version * Fix node version detect logic to handle node v10 (#2025) * #1019: Get format settings from document editor instead of global. (#2035) * Update PSSA docs Url to point to master branch because master is now the default branch (#2037) * add machine scope (#2039) * add machine scope * use a different setting for test and add user setting test * remove isExecutable and remove powershell.developer.powerShellExePath * Add param-block snippet (#2081)
PR Summary
Adds snippets for the various script requirement directive parameterizations. Also includes convenience snippets for some of the more specific common-but-verbose parameter sets.
Adds the following snippets (listed by name, not prefix):
Notes:
The About Requires help documents the
-Modules
parameter only in the plural, but theScriptRequirements
Class API documentation demonstrates that that parameter can also be used in the singular (i.e.-Module
), as these snippets use it.The
-Assembly
parameter is not documented in the About Requires help, but is supported as demonstrated by theScriptRequirements
Class API documentation.PR Checklist
NA
PR has tests