roqkf

[Prettier] Delete `โ` prettier/prettier ๋ณธ๋ฌธ

๐Ÿ’ป Development/๊ธฐ๋ก

[Prettier] Delete `โ` prettier/prettier

ahyeon7 2023. 4. 18. 00:12

โœจ Intro


๋น ๋น ๋นจ๊ฐ„๋ง› ํ”„๋กœ์ ํŠธ์˜ ์‹œ์ž‘์œผ๋กœ pull์„ ๋ฐ›์•„์™€์„œ npm ์„ค์น˜ ํ›„์— ๋ณธ ์—๋Ÿฌ๋‹ค.

Delete `โ` ์˜ค๋ฅ˜

์˜ค๋ฅ˜๋ฅผ ๋ถ€์ˆด ๋ณด์ž...


๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด์„œ ๋‚˜์˜จ ํ•ด๋‹น ์—๋Ÿฌ๋Š” ๊ทผ๋ณธ์ ์œผ๋กœ ์ปดํ“จํ„ฐ OS๋ณ„๋กœ ๋‹ค๋ฅธ ์ค„๋ฐ”๊ฟˆ ํƒ€์ž…์„ ์‚ฌ์šฉํ•ด์„œ ๋‚˜๋Š” ์˜ค๋ฅ˜๋ผ๊ณ  ํ•œ๋‹ค. Prettier์—์„œ๋Š” CRLF ๋Œ€์‹  LF ์‚ฌ์šฉ์„ ๊ถŒ๊ณ ํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค. ํ™•์ธํ•ด ๋ณด๋‹ˆ ๋‚ด VS ์ฝ”๋“œ์—์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด CRLF๋กœ ์„ค์ •๋์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

๐Ÿ€ Linux(์œ ๋‹‰์Šค ๊ณ„์—ด)

  • LF๊ฐ€ ๊ธฐ๋ณธ๊ฐ’

๐Ÿ€ Windows

  • CRLF๊ฐ€ ๊ธฐ๋ณธ๊ฐ’

CRLF? ๊ทธ๊ฒŒ ๋ญ”๋ฐ. ๊ทธ๊ฑฐ ์–ด๋–ป๊ฒŒ ํ•˜๋Š” ๊ฑด๋ฐ.


๐Ÿ“Œ CRLF

ํƒ€์ž๊ธฐ๋กœ ๋ฌธ์„œ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ํ•œ ์ค„์— ๊ธ€์ž๋ฅผ ๋‹ค ์ž…๋ ฅํ–ˆ์œผ๋ฉด ์•„๋ž˜ ์ค„๋กœ ์ด๋™์‹œ์ผœ์ค˜์•ผํ•œ๋‹ค. ์ด์ฒ˜๋Ÿผ ์•„๋ž˜ ์ค„๋กœ ์ด๋™ํ•˜๋Š” ๊ฒƒ์ด LF ์ด๊ณ , ์™ผ์ชฝ ๋์œผ๋กœ ๋ฐ€์–ด์ฃผ๋Š” ๊ฒƒ์„ CR ์ด๋ผ๊ณ  ํ•œ๋‹ค.

๐Ÿ€ LF(Line Feed)

  • ์•„๋ž˜ ์ค„๋กœ ์ด๋™ ํ•˜๋Š” ๊ฒƒ

๐Ÿ€ CR(Carrige Return)

  • ์™ผ์ชฝ ๋์œผ๋กœ ๋ฐ€์–ด ์ฃผ๋Š” ๊ฒƒ

๐Ÿ€ CRLF(CR + LF)

  • ๋ณต๊ท€์™€ ๊ฐœํ–‰
  • ์•„๋ž˜ ์ค„๋กœ ์ด๋™ ํ›„ ์™ผ์ชฝ ๋์œผ๋กœ ๋ฐ€์–ด ์ฃผ๋Š” ๊ฒƒ

๐Ÿ“Œ LF์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 


Prettier์—์„œ๋Š” CRLF ๋Œ€์‹  LF ์‚ฌ์šฉ์„ ๊ถŒ๊ณ ํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ํ–ˆ๋Š”๋ฐ ์™œ LF ์‚ฌ์šฉ์„ ๊ถŒ๊ณ ํ• ๊นŒ?

CRLF ์™€ LF ๋ฐ”์ดํŠธ ์ฝ”๋“œ๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ํ˜•์ƒ๊ด€๋ฆฌ์˜ ํˆด์—์„œ๋Š” ์„œ๋กœ๋ฅผ ๋ณด๊ธฐ์—๋Š” ๊ฐ™์€ ์ฝ”๋“œ์ฒ˜๋Ÿผ ๋ณด์—ฌ๋„ ๋‹ค๋ฅธ ์ฝ”๋“œ๋กœ ์ธ์‹ํ•˜๊ฒŒ ๋œ๋‹ค๊ณ  ํ•œ๋‹ค. ์ด๋กœ ์ธํ•ด Commit์„ ํ•˜๊ฒŒ ๋  ๋•Œ, ์ค„ ๋ฐ”๊ฟˆ ํƒ€์ž…์ด ๋‹ค๋ฅธ ๊ฒฝ์šฐ์— ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์€ ํŒŒ์ผ๋„ ๋ณ€๊ฒฝํ–ˆ๋‹ค๊ณ  ์ธ์‹ํ•˜๊ธฐ ๋•Œ๋ฌธ์— LF ๋ฐฉ์‹์œผ๋กœ ํ†ต์ผํ•œ ๊ฒƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ ๋‹ค์–‘ํ•œ ์ฝ”๋”ฉ ์ปจ๋ฒค์…˜ ๊ทœ์น™๊ณผ ๊ฐœ๋ฐœ์ž๋“ค์˜ ์ผ๊ด€์ ์ธ ์ฝ”๋”ฉ ์Šคํƒ€์ผ์„ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•œ ํˆด์ธ Prettier์—์„œ๋Š” ํ˜‘์—… ๋•Œ๋ฌธ์— LF ์‚ฌ์šฉ์„ ๊ถŒ๊ณ ํ•œ๋‹ค.


๐Ÿ“Œ ๋ฌธ์ œ์ 

Prettier 2.0.0 ๋ฒ„์ „ ์ดํ›„๋ถ€ํ„ฐ end of line ๊ฐ’์˜ default๋ฅผ auto์—์„œ LF๋กœ ๋ณ€๊ฒฝํ•˜์˜€๋Š”๋ฐ VSCode์—์„œ๋„, ํ”„๋กœ์ ํŠธ ๋‚ด์—์„œ๋„ ์—ฌ์ „ํžˆ CRLF๋ฅผ ์“ฐ๊ณ  ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒƒ์ด๋‹ค.

๐Ÿ˜Ž ํ•ด๊ฒฐ ๋ฐฉ์•ˆ

1. ์•„๋ž˜์˜ ์‚ฌ์ง„๊ณผ ๊ฐ™์ด Vs ์ฝ”๋“œ ํ•˜๋‹จ์„ CRLF์—์„œ LF๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค.

2. ๊ธฐ์กด ํ”„๋กœ์ ํŠธ์— ์ด๋ฏธ ์„ค์ •๋˜์–ด์žˆ๋Š” ๊ฐ’๋“ค ๊ณ ๋ คํ•ด, eslintrc.js ํŒŒ์ผ์˜ rules์— ์•„๋ž˜ ์„ค์ •์„ ๋„ฃ๋Š”๋‹ค.

rules: {
    'prettier/prettier': [
      'error',
      {
        endOfLine: 'auto',
      },
    ],
  },

์ฐธ๊ณ 1

์ฐธ๊ณ 2