1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# This is a configuration file for the bacon tool
#
# Complete help on configuration: https://dystroy.org/bacon/config/
#
# You may check the current default at
# https://github.com/Canop/bacon/blob/main/defaults/default-bacon.toml
= "check"
= "always"
[]
= ["cargo", "check"]
= false
[]
= ["cargo", "check", "--all-targets"]
= false
# Run clippy on the default target
[]
= ["cargo", "clippy"]
= false
# Run clippy on all targets
# To disable some lints, you may change the job this way:
# [jobs.clippy-all]
# command = [
# "cargo", "clippy",
# "--all-targets",
# "--",
# "-A", "clippy::bool_to_int_with_if",
# "-A", "clippy::collapsible_if",
# "-A", "clippy::derive_partial_eq_without_eq",
# ]
# need_stdout = false
[]
= ["cargo", "clippy", "--all-targets"]
= false
[]
= [
"cross", "build",
"--target", "x86_64-pc-windows-gnu",
]
# Run clippy in pedantic mode
# The 'dismiss' feature may come handy
[]
= [
"cargo", "clippy",
"--",
"-W", "clippy::pedantic",
"-A", "clippy::must_use_candidate",
"-A", "clippy::missing_errors_doc",
"-A", "clippy::struct_excessive_bools",
"-A", "clippy::wildcard_imports",
"-A", "clippy::return_self_not_must_use",
]
= false
# This job lets you run
# - all tests: bacon test
# - a specific test: bacon test -- config::test_default_files
# - the tests of a package: bacon test -- -- -p config
[]
= ["cargo", "test"]
= true
[]
= [
"cargo", "nextest", "run",
"--hide-progress-bar", "--failure-output", "final"
]
= true
= "nextest"
[]
= ["cargo", "doc", "--no-deps"]
= false
# If the doc compiles, then it opens in your browser and bacon switches
# to the previous job
[]
= ["cargo", "doc", "--no-deps", "--open"]
= false
= "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.
[]
= [
"cargo", "run",
# put launch parameters for your program behind a `--` separator
]
= true
= true
= true
# Run your long-running application (eg server) and have the result displayed in bacon.
# For programs that never stop (eg a server), `background` is set to false
# to have the cargo run output immediately displayed instead of waiting for
# program's end.
# 'on_change_strategy' is set to `kill_then_restart` to have your program restart
# on every change (an alternative would be to use the 'F5' key manually in bacon).
# If you often use this job, it makes sense to override the 'r' key by adding
# a binding `r = job:run-long` at the end of this file .
# A custom kill command such as the one suggested below is frequently needed to kill
# long running programs (uncomment it if you need it)
[]
= [
"cargo", "run",
# put launch parameters for your program behind a `--` separator
]
= true
= true
= false
= "kill_then_restart"
# kill = ["pkill", "-TERM", "-P"]
# This parameterized job runs the example of your choice, as soon
# as the code compiles.
# Call it as
# bacon ex -- my-example
[]
= ["cargo", "run", "--example"]
= true
= 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 global prefs.toml file instead.
[]
# alt-m = "job:my-job"
= "job:clippy-all" # comment this to have 'c' run clippy on only the default target
= "job:pedantic"
= "job:windows"