Freigeben über


Invoke-Formatter

Formatiert einen Skripttext basierend auf den Eingabeeinstellungen oder Standardeinstellungen.

Syntax

Invoke-Formatter
      [-ScriptDefinition] <string>
      [[-Settings] <Object>]
      [[-Range] <int[]>]
      [<CommonParameters>]

Beschreibung

Das Invoke-Formatter Cmdlet verwendet eine Zeichenfolgeneingabe und formatiert sie gemäß den definierten Einstellungen. Wenn kein Einstellungsparameter angegeben wird, geht das Cmdlet von den in definierten Settings/CodeFormatting.psd1Standardeinstellungen für die Codeformatierung aus.

Beispiele

BEISPIEL 1: Formatieren des Eingabeskripttexts mithilfe der Standardeinstellungen

$scriptDefinition = @'
function foo {
"hello"
  }
'@

Invoke-Formatter -ScriptDefinition $scriptDefinition

function foo {
    "hello"
}

BEISPIEL 2: Formatieren des Eingabeskripts mithilfe der in einer Hashtabelle definierten Einstellungen

$scriptDefinition = @'
function foo {
"hello"
}
'@

$settings = @{
    IncludeRules = @("PSPlaceOpenBrace", "PSUseConsistentIndentation")
    Rules = @{
        PSPlaceOpenBrace = @{
            Enable = $true
            OnSameLine = $false
        }
        PSUseConsistentIndentation = @{
            Enable = $true
        }
    }
}

Invoke-Formatter -ScriptDefinition $scriptDefinition -Settings $settings

function foo
{
    "hello"
}

BEISPIEL 3: Formatieren des Eingabeskripttexts mithilfe der Einstellungen, die eine PSD1-Datei definiert haben

Invoke-Formatter -ScriptDefinition $scriptDefinition -Settings /path/to/settings.psd1

Parameter

-Range

Der Bereich, in dem die Formatierung erfolgen soll. Der Wert dieses Parameters muss ein Array von vier ganzen Zahlen sein. Diese Zahlen müssen größer als 0 sein. Die vier ganzen Zahlen stellen die folgenden vier Werte in dieser Reihenfolge dar:

  • Startzeilennummer
  • Startspaltennummer
  • Endzeilennummer
  • Endspaltennummer
Type:Int32[]
Position:3
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ScriptDefinition

Der Text des zu formatierenden Skripts wird als Zeichenfolge dargestellt. Dies ist kein ScriptBlock-Objekt .

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Settings

Eine Einstellungshashtabelle oder ein Pfad zu einer PowerShell-Datendatei (.psd1), die die Einstellungen enthält.

Type:Object
Position:2
Default value:CodeFormatting
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Ausgaben

String

Das formatierte Zeichenfolgenergebnis.