rust-switcher 1.0.6

Windows keyboard layout switcher and text conversion utility
Documentation
#:schema https://dystroy.org/bacon/.bacon.schema.json



default_job = "dev-long"



env.CARGO_TERM_COLOR = "always"

env.RUSTFLAGS = "-D warnings"

env.RUST_LOG = "trace"



[jobs.dev-long]

command = ["powershell", "-NoProfile", "-Command", """
  $ErrorActionPreference = 'Stop'

  cargo +nightly fmt --check
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

  cargo +nightly clippy --all-targets --all-features -- `
    -D warnings `
    -D clippy::all `
    -D clippy::style `
    -D clippy::complexity `
    -D clippy::perf `
    -D clippy::cargo `
    -D clippy::unwrap_used `
    -D clippy::expect_used `
    -D clippy::todo `
    -D clippy::unimplemented `
    -D clippy::dbg_macro `
    -A clippy::multiple_crate_versions
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

  cargo +nightly build --features debug-tracing
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

  .\\target\\debug\\rust-switcher.exe
  """]

kill = [

  "powershell",

  "-NoProfile",

  "-Command",

  "Get-Process rust-switcher -ErrorAction SilentlyContinue | ForEach-Object { $_.CloseMainWindow() | Out-Null }; Start-Sleep -Milliseconds 200; Get-Process rust-switcher -ErrorAction SilentlyContinue | Stop-Process -Force",

]



need_stdout = true

allow_warnings = false

background = false

on_change_strategy = "kill_then_restart"



[jobs.release-long]

command = ["powershell", "-NoProfile", "-Command", """
  $ErrorActionPreference = 'Stop'

  cargo +nightly fmt --check
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

  cargo +nightly clippy --all-targets --all-features -- `
    -D warnings `
    -D clippy::all `
    -D clippy::style `
    -D clippy::complexity `
    -D clippy::perf `
    -D clippy::cargo `
    -D clippy::unwrap_used `
    -D clippy::expect_used `
    -D clippy::todo `
    -D clippy::unimplemented `
    -D clippy::dbg_macro `
    -A clippy::multiple_crate_versions
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

  cargo +nightly build --release --locked
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

  .\\target\\release\\rust-switcher.exe
  """]

kill = [

  "powershell",

  "-NoProfile",

  "-Command",

  "Get-Process rust-switcher -ErrorAction SilentlyContinue | ForEach-Object { $_.CloseMainWindow() | Out-Null }; Start-Sleep -Milliseconds 200; Get-Process rust-switcher -ErrorAction SilentlyContinue | Stop-Process -Force",

]

need_stdout = true

allow_warnings = false

background = false

on_change_strategy = "kill_then_restart"



[jobs.test-long]

env.RUST_TEST_NOCAPTURE = "1"

command = ["powershell", "-NoProfile", "-Command", """
  $ErrorActionPreference = 'Stop'

  cargo +nightly fmt --check
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

  cargo +nightly clippy --all-targets --all-features -- `
    -D warnings `
    -D clippy::all `
    -D clippy::style `
    -D clippy::complexity `
    -D clippy::perf `
    -D clippy::cargo `
    -D clippy::unwrap_used `
    -D clippy::expect_used `
    -D clippy::todo `
    -D clippy::unimplemented `
    -D clippy::dbg_macro `
    -A clippy::multiple_crate_versions
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

  cargo +nightly test -- --nocapture
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
  """]

need_stdout = true

allow_warnings = false

background = false

on_change_strategy = "kill_then_restart"



[jobs.dushnota]

command = ["powershell", "-NoProfile", "-Command", """
  $ErrorActionPreference = 'Stop'

  cargo +nightly fmt --check
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

  cargo +nightly clippy --all-targets --all-features -- `
    -D warnings `
    -D clippy::all `
    -D clippy::style `
    -D clippy::complexity `
    -D clippy::perf `
    -D clippy::cargo `
    -D clippy::unwrap_used `
    -D clippy::expect_used `
    -D clippy::todo `
    -D clippy::unimplemented `
    -D clippy::dbg_macro `
    -D clippy::pedantic `
    -D clippy::panic `
    -A clippy::multiple_crate_versions
  if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
  """]

need_stdout = true

allow_warnings = false

background = false

on_change_strategy = "kill_then_restart"



[keybindings]

d = "job:dev-long"

r = "job:release-long"

t = "job:test-long"

p = "job:dushnota"