Ctrl K
ComunidadGuías…

run-clang-format.ps1

Rama master · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
#!/usr/bin/env pwsh
param(
    [string]$SourceDirectory = ".",
    [string]$ClangFormat = "clang-format"
)

# TODO: Run clang-format on C++ source files

# Run clang-format on AngelScript source files
$ScriptDirectory = Join-Path $SourceDirectory "Resources" "Scripts"
$Scripts = Get-ChildItem -Recurse -Include "*.as" $ScriptDirectory

$I = 0
foreach ($Item in $Scripts) {
    $Path = $Item.FullName
    $TmpPath = $Path.Substring(0, $Path.Length - 3) + ".java"

    # Make it pretend to be a Java source file (which clang-format understands)
    # I didn't choose C++ mainly due to the difference in how accessibility is
    # specified.
    Copy-Item $Path $TmpPath

    # Run clang-format
    &$ClangFormat -i -style=file $TmpPath

    # Rename it back
    Move-Item -Force $TmpPath $Path

    # Fix `@ this.`
    $Text = Get-Content $Path
    $Text = $Text.Replace("@ this.", "@this.")
    Set-Content $Path $Text

    $I += 1
    Write-Progress -Activity "Running clang-format on AngelScript source files" `
        -PercentComplete ($I / $Scripts.Count * 100)
}