···11+# This is a configuration file for the bacon tool
22+#
33+# Complete help on configuration: https://dystroy.org/bacon/config/
44+#
55+# You may check the current default at
66+# https://github.com/Canop/bacon/blob/main/defaults/default-bacon.toml
77+88+default_job = "check"
99+env.CARGO_TERM_COLOR = "always"
1010+1111+[jobs.check]
1212+command = ["cargo", "check"]
1313+need_stdout = false
1414+1515+[jobs.check-all]
1616+command = ["cargo", "check", "--all-targets"]
1717+need_stdout = false
1818+1919+# Run clippy on the default target
2020+[jobs.clippy]
2121+command = ["cargo", "clippy"]
2222+need_stdout = false
2323+2424+# Run clippy on all targets
2525+# To disable some lints, you may change the job this way:
2626+# [jobs.clippy-all]
2727+# command = [
2828+# "cargo", "clippy",
2929+# "--all-targets",
3030+# "--",
3131+# "-A", "clippy::bool_to_int_with_if",
3232+# "-A", "clippy::collapsible_if",
3333+# "-A", "clippy::derive_partial_eq_without_eq",
3434+# ]
3535+# need_stdout = false
3636+[jobs.clippy-all]
3737+command = ["cargo", "clippy", "--all-targets"]
3838+need_stdout = false
3939+4040+# Run clippy in pedantic mode
4141+# The 'dismiss' feature may come handy
4242+[jobs.pedantic]
4343+command = [
4444+ "cargo", "clippy",
4545+ "--",
4646+ "-W", "clippy::pedantic",
4747+]
4848+need_stdout = false
4949+5050+# This job lets you run
5151+# - all tests: bacon test
5252+# - a specific test: bacon test -- config::test_default_files
5353+# - the tests of a package: bacon test -- -- -p config
5454+[jobs.test]
5555+command = ["cargo", "test"]
5656+need_stdout = true
5757+5858+[jobs.nextest]
5959+command = [
6060+ "cargo", "nextest", "run",
6161+ "--release",
6262+ "--hide-progress-bar", "--failure-output", "final"
6363+]
6464+need_stdout = true
6565+analyzer = "nextest"
6666+6767+[jobs.doc]
6868+command = ["cargo", "doc", "--no-deps"]
6969+need_stdout = false
7070+7171+# If the doc compiles, then it opens in your browser and bacon switches
7272+# to the previous job
7373+[jobs.doc-open]
7474+command = ["cargo", "doc", "--no-deps", "--open"]
7575+need_stdout = false
7676+on_success = "back" # so that we don't open the browser at each change
7777+7878+# You can run your application and have the result displayed in bacon,
7979+# if it makes sense for this crate.
8080+[jobs.run]
8181+command = [
8282+ "cargo", "run",
8383+ "--release"
8484+ # put launch parameters for your program behind a `--` separator
8585+]
8686+need_stdout = true
8787+allow_warnings = true
8888+background = true
8989+9090+# Run your long-running application (eg server) and have the result displayed in bacon.
9191+# For programs that never stop (eg a server), `background` is set to false
9292+# to have the cargo run output immediately displayed instead of waiting for
9393+# program's end.
9494+# 'on_change_strategy' is set to `kill_then_restart` to have your program restart
9595+# on every change (an alternative would be to use the 'F5' key manually in bacon).
9696+# If you often use this job, it makes sense to override the 'r' key by adding
9797+# a binding `r = job:run-long` at the end of this file .
9898+# A custom kill command such as the one suggested below is frequently needed to kill
9999+# long running programs (uncomment it if you need it)
100100+[jobs.run-long]
101101+command = [
102102+ "cargo", "run",
103103+ # put launch parameters for your program behind a `--` separator
104104+]
105105+need_stdout = true
106106+allow_warnings = true
107107+background = false
108108+on_change_strategy = "kill_then_restart"
109109+# kill = ["pkill", "-TERM", "-P"]
110110+111111+# This parameterized job runs the example of your choice, as soon
112112+# as the code compiles.
113113+# Call it as
114114+# bacon ex -- my-example
115115+[jobs.ex]
116116+command = ["cargo", "run", "--example"]
117117+need_stdout = true
118118+allow_warnings = true
119119+120120+# You may define here keybindings that would be specific to
121121+# a project, for example a shortcut to launch a specific job.
122122+# Shortcuts to internal functions (scrolling, toggling, etc.)
123123+# should go in your personal global prefs.toml file instead.
124124+[keybindings]
125125+# alt-m = "job:my-job"
126126+c = "job:clippy-all" # comment this to have 'c' run clippy on only the default target
127127+p = "job:pedantic"