33 řádky
975 B
PowerShell
33 řádky
975 B
PowerShell
|
[CmdletBinding(SupportsShouldProcess)]param()
|
||
|
|
||
|
$local:myAliases = [ordered]@{}
|
||
|
$myAliases.sudo = 'Invoke-MySudo'
|
||
|
$myAliases.vi = 'Edit-TextFile'
|
||
|
$myAliases.vim = 'Edit-TextFile'
|
||
|
$myAliases.nvim = 'Edit-TextFile'
|
||
|
$myAliases.nvim = 'Edit-TextFile'
|
||
|
|
||
|
#######################################################################
|
||
|
|
||
|
$local:IsVerbose = [bool]($PSBoundParameters['Verbose'])
|
||
|
|
||
|
$local:MyAliasScope = 1
|
||
|
|
||
|
$local:oldAliases = Get-MyAliases
|
||
|
|
||
|
$oldAliases = Get-Alias -Scope $MyAliasScope |
|
||
|
Where-Object Name -in $($oldAliases.Name + $myAliases.Keys)
|
||
|
|
||
|
if( $oldAliases -and $IsVerbose ) {
|
||
|
Write-Verbose "Removing: $($oldAliases.Name -join ', ')"
|
||
|
}
|
||
|
$oldAliases | Remove-Alias -Scope $MyAliasScope
|
||
|
Get-ChildItem (Join-Path $MyPSScrtipRoot '*.ps1') |
|
||
|
ForEach-Object {
|
||
|
Set-Alias $($_.BaseName) $_.FullName -Scope $MyAliasScope
|
||
|
}
|
||
|
|
||
|
foreach( $local:alias in $myAliases.Keys ) {
|
||
|
Set-Alias -Name $alias -Value $myAliases[$alias] -Description '#MyAlias' -Scope $MyAliasScope
|
||
|
}
|