콘텐츠로 이동

bacon - 백그라운드 Rust 코드 체커 치트시트

bacon - 백그라운드 Rust 코드 체커 치트시트

bacon은 Rust를 위한 백그라운드 코드 체커입니다. 사이드 터미널에서 한 번 실행하고 소스 파일을 보면서, 모든 저장에서 cargo check, clippy 또는 테스트를 다시 실행하고 컴팩트한, 항상 현재의 오류와 경고 요약을 표시합니다. 설계 목표는 다시는 cargo check를 입력하지 않고 출력의 벽을 스크롤하지 않는 것입니다 — bacon은 첫 번째 오류를 두드러지게 표시하고 것을 수정함에 따라 제자리에서 업데이트합니다.

설치

방법명령
Cargocargo install --locked bacon
macOS (Homebrew)brew install bacon
Arch Linuxpacman -S bacon
확인bacon --version

실행

명령설명
bacon기본 작업 (보통 check)
bacon clippy변경 시 clippy 실행
bacon test변경 시 테스트 실행
bacon check-all모든 대상/기능 확인
bacon doc문서 빌드
bacon --job clippy-all명명된 작업
bacon -- --features x추가 cargo 인수 전달

키보드 제어

동작
ccheck로 전환
lclippy로 전환
ttest로 전환
d문서 빌드
esc이전 작업으로 돌아가기
q / Ctrl+C종료
space지금 다시 실행
s요약 모드 토글 (컴팩트 목록)
w줄 바꿈 토글
g/G위/아래로 스크롤
p변경 시 일시 중지 토글

요약 모드

요약 모드는 출력을 문제당 한 줄로 축약합니다 — 좁은 사이드 창에 이상적입니다.

✖ 3 errors · ⚠ 5 warnings
  src/main.rs:42  mismatched types
  src/lib.rs:17   unused variable: `x`

s를 눌러 토글하세요; 항목에서 enter를 눌러 전체 진단을 펼치세요.

구성

# bacon.toml in the project root
default_job = "clippy"

[jobs.clippy]
command = ["cargo", "clippy", "--all-targets", "--color", "always"]
need_stdout = false

[jobs.test]
command = ["cargo", "nextest", "run", "--color", "always"]
need_stdout = true

[jobs.check-win]
command = ["cargo", "check", "--target", "x86_64-pc-windows-msvc"]

[keybindings]
n = "job:check-win"
필드목적
default_jobbacon이 인수 없이 실행
command실제 실행할 명령
need_stdout캡처 stdout (테스트) vs stderr만 (check)
watch추가로 보기할 경로
keybindings작업을 전환하기 위한 맞춤형 키

일반적인 설치

# 두 창 워크플로: 왼쪽 에디터, 오른쪽 bacon
bacon clippy

# nextest로 테스트 지속 실행 (속도)
bacon test          # 위에서 정의한 nextest 작업

# 워크스페이스 멤버만 보기
bacon -p my-crate

cargo watch가 아닌 이유?

측면baconcargo-watch
출력컴팩트한 제자리 요약생 스크롤 출력
작업 전환실시간 키바인딩새 인수로 재시작
초점첫 오류 강조됨전체 로그
최고의 용도지속적 피드백 창일반 명령 보기

비Rust 또는 일반 파일 보기의 경우 watchexec를 사용하세요; 더 빠른 테스트 실행을 위해 cargo-nextest와 쌍을 이루세요.

리소스