# This is a configuration file for the bacon tool
# More info at https://github.com/Canop/bacon

default_job = "cranky"

[jobs]

[jobs.cranky]
command = [
    "cargo",
    "cranky",
    "--all-targets",
    "--all-features",
    "--color=always",
]
need_stdout = false
watch = ["tests", "benches", "examples"]

[jobs.wasm]
command = [
    "cargo",
    "cranky",
    "-p=egui_demo_app",
    "--lib",
    "--target=wasm32-unknown-unknown",
    "--target-dir=target_wasm",
    "--all-features",
    "--color=always",
]
need_stdout = false
watch = ["tests", "benches", "examples"]

[jobs.test]
command = ["cargo", "test", "--color=always"]
need_stdout = true
watch = ["tests"]

[jobs.doc]
command = ["cargo", "doc", "--color=always", "--all-features", "--no-deps"]
need_stdout = false

# if the doc compiles, then it opens in your browser and bacon switches
# to the previous job
[jobs.doc-open]
command = [
    "cargo",
    "doc",
    "--color=always",
    "--all-features",
    "--no-deps",
    "--open",
]
need_stdout = false
on_success = "back" # so that we don't open the browser at each change

# You can run your application and have the result displayed in bacon,
# *if* it makes sense for this crate. You can run an example the same
# way. Don't forget the `--color always` part or the errors won't be
# properly parsed.
[jobs.run]
command = ["cargo", "run", "--color=always"]
need_stdout = true

# You may define here keybindings that would be specific to
# a project, for example a shortcut to launch a specific job.
# Shortcuts to internal functions (scrolling, toggling, etc.)
# should go in your personal prefs.toml file instead.
[keybindings]
i = "job:initial"
c = "job:cranky"
a = "job:wasm"
d = "job:doc-open"
t = "job:test"
r = "job:run"
