diff --git a/Taskfile.yml b/Taskfile.yml new file mode 100644 index 0000000..64ed632 --- /dev/null +++ b/Taskfile.yml @@ -0,0 +1,21 @@ +version: '3' + +vars: + SHELL: pwsh + SOURCE: addon\globalPlugins\voicemeeter + DEST: ${env:appdata}\nvda\scratchpad\globalPlugins\voicemeeter\ + IGNORE: ${env:appdata}\nvda\scratchpad\globalPlugins\voicemeeter\__pycache__\ + +tasks: + copy: + desc: Copy sources files to scratchpad directory + platforms: [windows] + cmds: + - "{{.SHELL}} -Command 'robocopy {{.SOURCE}} {{.DEST}} /NDL'" + ignore_error: true + + build: + desc: Build the addon + platforms: [windows] + cmds: + - '{{.SHELL}} -Command "scons"' diff --git a/build.ps1 b/build.ps1 deleted file mode 100644 index 79522f3..0000000 --- a/build.ps1 +++ /dev/null @@ -1,25 +0,0 @@ -param ( - [switch]$build -) - -function Copy-FilesToScratchpad { - $source = Join-Path $PSScriptRoot "addon" "globalPlugins" "voicemeeter" - $target = Join-Path $env:appdata "nvda" "scratchpad" "globalPlugins" "voicemeeter" - Robocopy $source $target | Out-Null -} - -function Build-Addon { - "Building add-on" | Write-Host - scons -} - -function Main { - "Copying updated files to Scratchpad" | Write-Host - Copy-FilesToScratchpad - - if ($build) { - Build-Addon - } -} - -if ($MyInvocation.InvocationName -ne '.') { Main } \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index abec450..38ba827 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,8 +20,8 @@ build = [ distribution = false [tool.pdm.scripts] -copy = "pwsh build.ps1" -build = "pwsh build.ps1 -build" +copy = "task copy" +build = "task build" [tool.ruff] exclude = [