--- id: wiki-2026-0508-eslint-plugin-prettier title: eslint plugin prettier category: 10_Wiki/Topics status: needs_review canonical_id: self aliases: [P-Reinforce-AUTO-4555A7] duplicate_of: none source_trust_level: A confidence_score: 0.9 tags: [auto-reinforced] raw_sources: [] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - [[ESLint|ESLint]]-plugin-[[Prettier|Prettier]]" inferred_by: Claude Opus 4.7 (auto-normalize 2026-05-08) tech_stack: language: unspecified framework: unspecified --- # [[eslint-plugin-prettier|eslint-plugin-prettier]] ## πŸ“Œ ν•œ 쀄 톡찰 (The Karpathy Summary) > `eslint-plugin-prettier`λŠ” μ½”λ“œ 포맷터인 Prettierλ₯Ό 정적 뢄석 도ꡬ인 ESLint의 κ·œμΉ™μœΌλ‘œ μ‹€ν–‰μ‹œμΌœμ£ΌλŠ” ν”ŒλŸ¬κ·ΈμΈ νŒ¨ν‚€μ§€μž…λ‹ˆλ‹€ [1, 2]. 이 도ꡬλ₯Ό μ‚¬μš©ν•˜λ©΄ Prettierκ°€ μΈμ‹ν•˜λŠ” μ½”λ“œ μŠ€νƒ€μΌ 및 포맷 였λ₯˜λ₯Ό ESLint의 μ—λŸ¬λ‚˜ 경고둜 좜λ ₯ν•˜κ²Œ λ©λ‹ˆλ‹€ [2, 3]. 결과적으둜 κ°œλ°œμžλŠ” 두 λ„κ΅¬μ˜ κΈ°λŠ₯을 ν†΅ν•©ν•˜μ—¬ μ½”λ“œ 문법과 ν¬λ§·νŒ…μ„ ν•œ λ²ˆμ— 관리할 수 μžˆμŠ΅λ‹ˆλ‹€ [4, 5]. ## πŸ“– κ΅¬μ‘°ν™”λœ 지식 (Synthesized Content) * **μ£Όμš” μ—­ν•  및 λ™μž‘ 방식:** `eslint-plugin-prettier`λŠ” Prettier의 ν¬λ§·νŒ… κ·œμΉ™μ„ ESLint의 λ¦°νŒ… κ·œμΉ™ μ•ˆμœΌλ‘œ 가져와 λ™μž‘ν•˜κ²Œ λ§Œλ“­λ‹ˆλ‹€ [4-6]. 이λ₯Ό 톡해 κ°œλ°œμžλŠ” μ½”λ“œ λ‚΄μ—μ„œ Prettier의 κ·œμΉ™μ— μ–΄κΈ‹λ‚˜λŠ” μš”μ†Œλ“€μ„ ESLint의 μ—λŸ¬(λΉ¨κ°„ 쀄)λ‚˜ κ²½κ³ (λ…Έλž€ 쀄)둜 확인할 수 μžˆμŠ΅λ‹ˆλ‹€ [3, 4]. λ˜ν•œ `eslint --fix` λͺ…λ Ήμ–΄ ν•˜λ‚˜λ§Œ 싀행해도 `prettier --write`λ₯Ό λ³„λ„λ‘œ μ‚¬μš©ν•  ν•„μš” 없이 μ½”λ“œ ν¬λ§·νŒ…κΉŒμ§€ μžλ™μœΌλ‘œ 적용되게 ν•΄μ€λ‹ˆλ‹€ [4, 5]. * **μ‚¬μš©μ˜ μž₯단점:** * **μž₯점:** Prettierλ₯Ό λ”°λ‘œ μ„€μΉ˜ν•˜κ±°λ‚˜ μ‹€ν–‰ν•  ν•„μš” 없이, `.eslintrc`와 같은 ν•˜λ‚˜μ˜ μ„€μ • νŒŒμΌμ—μ„œ ESLint와 Prettier 섀정을 ν†΅ν•©ν•˜μ—¬ 관리할 수 μžˆμŠ΅λ‹ˆλ‹€ [4]. * **단점:** ν¬λ§·νŒ… 였λ₯˜κ°€ ESLint μ—λŸ¬λ‘œ κ°„μ£Όλ˜κΈ° λ•Œλ¬Έμ— 에디터 μƒμ—μ„œ 뢉은 밑쀄이 λ„ˆλ¬΄ 많이 생겨 μ‹œκ°μ μœΌλ‘œ 거슬릴 수 μžˆμŠ΅λ‹ˆλ‹€ [4, 6]. λ˜ν•œ, Prettierλ₯Ό λ‹¨λ…μœΌλ‘œ μ‚¬μš©ν•˜λŠ” 것보닀 μ‹€ν–‰ 속도가 느렀질 수 있으며, λΆˆν•„μš”ν•œ ν”ŒλŸ¬κ·ΈμΈ λ ˆμ΄μ–΄κ°€ ν•˜λ‚˜ 더 μΆ”κ°€λœλ‹€λŠ” 단점이 μ‘΄μž¬ν•©λ‹ˆλ‹€ [4, 6]. * **λ³΄μ•ˆ 취약점 (CVE-2025-54313):** 2025λ…„ 7μ›” λ°œμƒν•œ npm 곡급망 곡격의 영ν–₯을 받은 νŒ¨ν‚€μ§€ 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€ [7]. ν”Όμ‹± 이메일 곡격으둜 λ©”μΈν…Œμ΄λ„ˆμ˜ 토큰이 νƒˆμ·¨λ˜μ–΄ μœˆλ„μš° ν™˜κ²½μ„ νƒ€κΉƒμœΌλ‘œ ν•˜λŠ” μ•…μ„± μ½”λ“œκ°€ μ‚½μž…λœ 버전이 npm λ ˆμ§€μŠ€νŠΈλ¦¬μ— λ°°ν¬λ˜μ—ˆμœΌλ©°, ν•΄λ‹Ή ν”ŒλŸ¬κ·ΈμΈμ˜ 4.2.2 및 4.2.3 버전이 이 곡격에 영ν–₯을 받은 κ²ƒμœΌλ‘œ λ³΄κ³ λ˜μ—ˆμŠ΅λ‹ˆλ‹€ [7]. ## ⚠️ λͺ¨μˆœ 및 μ—…λ°μ΄νŠΈ (Contradictions & Updates) - **κ³Όκ±° λ°μ΄ν„°μ™€μ˜ 좩돌:** μžλ™ν™” 엔진에 μ˜ν•΄ λ§€ν•‘λœ μ§€μ‹μœΌλ‘œ, μΆ”ν›„ μ •λ°€ 검증 ν•„μš”. - **μ •μ±… λ³€ν™”:** Programming & Language λΆ„μ•Όμ˜ μžλ™ μžμ‚°ν™” μˆ˜ν–‰. ## πŸ”— 지식 μ—°κ²° (Graph) - **Related Topics:** [[ESLint|ESLint]], Prettier, [[eslint-config-prettier|eslint-config-prettier]] - **Projects/Contexts:** CVE-2025-54313 (곡급망 곡격), μ›Ή ν”„λ‘ νŠΈμ—”λ“œ 개발 ν™˜κ²½ μ„€μ • - **Contradictions/Notes:** Prettier 곡식 λ¬Έμ„œ 및 μ—¬λŸ¬ κ°œλ°œμžλ“€μ€ `eslint-plugin-prettier`λ₯Ό μ‚¬μš©ν•  λ•Œ λ°œμƒν•˜λŠ” 속도 μ €ν•˜μ™€ κ³Όλ„ν•œ μ—λŸ¬ ν‘œμ‹œ 문제 λ•Œλ¬Έμ— 이 λ°©λ²•λ³΄λ‹€λŠ” ν¬λ§·νŒ… 좩돌 κ·œμΉ™λ§Œ κΊΌμ£ΌλŠ” `[[eslint-config-prettier|eslint-config-prettier]]`의 단독 μ‚¬μš©μ„ κ°€μž₯ μΆ”μ²œν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€ [1, 6, 8]. κ·ΈλŸ¬λ‚˜ μ„€μ •μ˜ 쀑앙화와 단일 μˆ˜μ • λͺ…λ Ήμ–΄(`eslint --fix`)의 νŽΈλ¦¬ν•¨μ„ 이유둜 이λ₯Ό μ„ ν˜Έν•˜λŠ” μ‹€λ¬΄μžλ“€λ„ μ‘΄μž¬ν•©λ‹ˆλ‹€ [4]. --- *Last updated: 2026-04-19* --- ## πŸ€– LLM ν™œμš© 힌트 (How to Use This Knowledge) **μ–Έμ œ 이 지식을 μ“°λŠ”κ°€:** - *(TODO)* **μ–Έμ œ μ“°λ©΄ μ•ˆ λ˜λŠ”κ°€:** - *(TODO)* ## πŸ§ͺ 검증 μƒνƒœ (Validation) - **정보 μƒνƒœ:** needs_review - **좜처 신뒰도:** A - **κ²€ν†  이유:** *(P-Reinforce Phase 1 μžλ™ μ •κ·œν™”. λ³Έλ¬Έ 검증 ν•„μš”.)* ## 🧬 쀑볡 검사 (Duplicate Check) - **κΈ°μ‘΄ μœ μ‚¬ λ¬Έμ„œ:** *(TODO: μΈλ±μ„œ ν΄λŸ¬μŠ€ν„° 리포트 μ°Έμ‘°)* - **처리 방식:** UPDATE (μžλ™ μ •κ·œν™”) - **처리 이유:** Phase 1 μ •κ·œν™” β€” μ˜› ν…œν”Œλ¦Ώ/λˆ„λ½ ν•„λ“œ 보강. ## πŸ•“ λ³€κ²½ 이λ ₯ (Changelog) | λ‚ μ§œ | λ³€κ²½ λ‚΄μš© | 처리 방식 | 신뒰도 | |------|-----------|-----------|--------| | 2026-05-08 | P-Reinforce Phase 1 μ •κ·œν™” (frontmatter + 헀더 ν‘œμ€€ν™”) | UPDATE | A | ## πŸ’» μ½”λ“œ νŒ¨ν„΄ (Code Patterns) **νŒ¨ν„΄ 1:** *(TODO: 이 ν”„λ‘œμ νŠΈ μ»¨λ²€μ…˜ λ°˜μ˜ν•œ ꡬ쑰 μŠ€μΌˆλ ˆν†€)* ```text # TODO ``` ## πŸ€” μ˜μ‚¬κ²°μ • κΈ°μ€€ (Decision Criteria) **선택 Aλ₯Ό 써야 ν•  λ•Œ:** - *(TODO)* **선택 Bλ₯Ό 써야 ν•  λ•Œ:** - *(TODO)* **κΈ°λ³Έκ°’:** > *(TODO)* ## ❌ μ•ˆν‹°νŒ¨ν„΄ (Anti-Patterns) - **[μ•ˆν‹°νŒ¨ν„΄]:** *(TODO: 무엇을 ν•˜λ©΄ μ•ˆ λ˜λŠ”κ°€ + 이유 + λŒ€μ‹  무엇을)*