asdf
/
asdf.ps1
31 строка · 751.0 Байт
1$Env:ASDF_DIR = $PSScriptRoot
2
3$_asdf_bin = "$Env:ASDF_DIR/bin"
4if ($null -eq $ASDF_DATA_DIR -or $ASDF_DATA_DIR -eq '') {
5$_asdf_shims = "${env:HOME}/.asdf/shims"
6}
7else {
8$_asdf_shims = "$ASDF_DATA_DIR/shims"
9}
10
11$env:PATH = "${_asdf_bin}:${_asdf_shims}:${env:PATH}"
12
13if ($env:PATH -cnotlike "*${_asdf_bin}*") {
14$env:PATH = "_asdf_bin:${env:PATH}"
15}
16if ($env:PATH -cnotlike "*${_asdf_shims}*") {
17$env:PATH = "_asdf_shims:${env:PATH}"
18}
19
20Remove-Variable -Force _asdf_bin, _asdf_shims
21
22function asdf {
23$asdf = $(Get-Command -CommandType Application asdf).Source
24
25if ($args.Count -gt 0 -and $args[0] -eq 'shell') {
26Invoke-Expression $(& $asdf 'export-shell-version' pwsh $args[1..($args.Count + -1)])
27}
28else {
29& $asdf $args
30}
31}
32