PowerShell / PowerShell/PSScriptAnalyzer

Formatter doesn't indent bracketed multi-line arguments correctly

未關閉
#1,748 1 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

還沒有人認領這個 Issue。

Area - Formatter Issue - Bug Up-for-Grabs
主要語言
C#
星號
2.2k
分支
415
平均合併
13 小時 1 分鐘
30 天內合併 PR
2

描述

Bracketed Commandlet arguments spanning multiple lines should increase the indentation level. See Invoke-Bar in the below example.

Expected behavior

Invoke-Foo `
    -Argument (
            Invoke-Bar -Argument
        ) `
    -Argument2

Actual behavior

Invoke-Foo `
    -Argument (
    Invoke-Bar -Argument
) `
    -Argument2

If an unexpected error was thrown then please report the full error details using e.g. $error[0] | Select-Object *

Environment data

> $PSVersionTable
Name Value
---- -----
PSVersion 5.1.19041.1237
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.19041.1237
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1

> (Get-Module -ListAvailable PSScriptAnalyzer).Version | ForEach-Object { $_.ToString() }
1.19.1
1.20.0

貢獻指南

開啟貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

研究方向

使用 PSScriptAnalyzer,透過 issue 中的 Invoke-Foo 和 Invoke-Bar 範例重現 formatter 輸出。追蹤 formatter 對帶括號的多行命令引數的處理,並檢查現有的 formatter 測試。完成標準是巢狀的 Invoke-Bar 引數按照預期輸出中的顯示進行縮排,且透過測試涵蓋此回歸問題。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
powershell
領域
tooling
Issue 類型
缺陷
難度
3/5
預估耗時
1-2 天
活躍度
停滯
描述清晰度
描述清楚
新手友好度
45/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。