ddoc 0.2.0

doc site generator
Documentation
#:schema https://dystroy.org/bacon/.bacon.schema.json

# 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

default_job = "check"
env.CARGO_TERM_COLOR = "always"

[jobs.check]
command = ["cargo", "check"]
need_stdout = false

[jobs.check-all]
command = ["cargo", "check", "--all-targets"]
need_stdout = false

# Run clippy on the default target
[jobs.clippy]
command = ["cargo", "clippy"]
need_stdout = false

[jobs.clippy-all]
command = [
    "cargo", "clippy",
    "--all-targets",
    "--",
    "-A", "clippy::bool_to_int_with_if",
    "-A", "clippy::collapsible_if",
    "-A", "clippy::collapsible_else_if",
    "-A", "clippy::derive_partial_eq_without_eq",
]
need_stdout = false

# Run clippy in pedantic mode
# The 'dismiss' feature may come handy
[jobs.pedantic]
command = [
	"cargo", "clippy",
	"--",
	"-W", "clippy::pedantic",
]
need_stdout = 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
[jobs.test]
command = ["cargo", "test"]
need_stdout = true

[jobs.nextest]
command = [
    "cargo", "nextest", "run",
    "--hide-progress-bar", "--failure-output", "final"
]
need_stdout = true
analyzer = "nextest"

[jobs.doc]
command = ["cargo", "doc", "--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", "--no-deps", "--open"]
need_stdout = false
on_success = "back" # so that we don't open the browser at each change

# Run on the bacon directory
[jobs.run]
command = [
    "cargo", "run",
    "--",
    "/home/dys/dev/bacon/ddoc",
]
need_stdout = true
allow_warnings = true
background = true

[jobs.serve]
command = [
    "cargo", "run",
    "--",
    "--serve",
    "website"
]
need_stdout = true
allow_warnings = true
background = false
on_change_strategy = "kill_then_restart"
watch = [
    "website/ddoc.hjson",
    "website/src",
]
# kill = ["pkill", "-TERM", "-P"]

# 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.
[keybindings]
c = "job:clippy-all" # comment this to have 'c' run clippy on only the default target
p = "job:pedantic" 
s = "job:serve"