콘텐츠로 이동

포맷터

Biome는 다양한 언어를 지원하는 의견 기반 포맷터입니다. prettier와 유사한 철학을 가지고 있으며, 스타일 논쟁을 피하기 위해 몇 가지 옵션만 제공하여, 대신 비엠의 옵션에 대한 논의로 전환합니다. 의도적으로 새로운 옵션 추가에 대한 유혹을 저항하며, 팀이 진정으로 중요한 일에 집중할 수 있도록 논쟁을 피하려고 합니다.

다음 명령은 src 디렉토리 내 파일의 형식을 확인합니다. 형식이 맞지 않는 코드를 발견하면 텍스트 차이를 출력합니다.

npx @biomejs/biome format ./src

새로운 형식을 적용하고 싶다면, --write 옵션을 전달하세요:

npx @biomejs/biome format --write ./src

명령은 파일 및 디렉토리 목록을 받아들입니다.

사용 가능한 모든 옵션에 대한 자세한 정보는 CLI 참조 페이지를 확인하세요.

Biome는 포맷터 동작을 조정하기 위한 몇 가지 옵션을 제공합니다. 다른 도구들과 달리, Biome는 언어 독립적인 옵션과 언어별 옵션을 분리합니다.

포맷터 옵션은 CLI 또는 Biome 구성 파일을 통해 설정할 수 있습니다. 1.9 버전부터는 .editorconfig 파일 로딩을 허용합니다.

CLI와 Biome LSP 모두 같은 옵션을 적용하도록 보장하기 위해 Biome 구성 파일 사용을 권장합니다. 기본값은 다음과 같습니다:

biome.json
{
"formatter": {
"enabled": true,
"formatWithErrors": false,
"ignore": [],
"attributePosition": "auto",
"indentStyle": "tab",
"indentWidth": 2,
"lineWidth": 80,
"lineEnding": "lf"
},
"javascript": {
"formatter": {
"arrowParentheses": "always",
"bracketSameLine": false,
"bracketSpacing": true,
"jsxQuoteStyle": "double",
"quoteProperties": "asNeeded",
"semicolons": "always",
"trailingCommas": "all"
}
},
"json": {
"formatter": {
"trailingCommas": "none"
}
}
}

Biome 포맷터의 주요 옵션은 다음과 같습니다:

  • 들여쓰기 스타일 (기본값: tab): 공백 또는 탭을 사용하여 들여쓰기;
  • 들여쓰기 너비 (기본값: 2): 각 들여쓰기 레벨당 공백 수;
  • 줄 너비 (기본값: 80): Biome가 코드를 감싸는 열의 폭;

자세한 내용은 구성 참조를 확인하세요.

때때로 포맷된 코드가 이상할 수 있습니다.

이러한 경우, 포맷 무시 주석을 사용할 수 있습니다:

example.js
// biome-ignore format: <설명>

예시:

example.js
const expr =
// biome-ignore format: 이 배열은 형식화되어서는 안 됨
[
(2 * n) / (r - l),
0,
(r + l) / (r - l),
0,
0,
(2 * n) / (t - b),
(t + b) / (t - b),
0,
0,
0,
-(f + n) / (f - n),
-(2 * f * n) / (f - n),
0,
0,
-1,
0,
];

Biome는 전체 파일을 무시하는 주석을 제공하지 않습니다. 그러나 Biome 구성 파일을 이용해 파일을 무시할 수 있습니다.