๐Ÿ–ผ๏ธ Jekyll ์ด๋ฏธ์ง€ ์ž๋™ ๋ถ™์—ฌ๋„ฃ๊ธฐ

๐Ÿ–ผ๏ธ Jekyll ์ด๋ฏธ์ง€ ์ž๋™ ๋ถ™์—ฌ๋„ฃ๊ธฐ

ํด๋ฆฝ๋ณด๋“œ์˜ ์ด๋ฏธ์ง€๋ฅผ ์ž๋™์œผ๋กœ Jekyll ๋ธ”๋กœ๊ทธ์˜ assets/images ํด๋”์— ์ €์žฅํ•˜๊ณ  ๋งˆํฌ๋‹ค์šด ๊ฒฝ๋กœ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์ž๋™ํ™” ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.

๐Ÿš€ ์„ค์น˜ & ์„ค์ •

1. Node.js ์˜์กด์„ฑ ์„ค์น˜

1
npm install

2. WSL2 ํ™˜๊ฒฝ์—์„œ ํด๋ฆฝ๋ณด๋“œ ์ ‘๊ทผ ์„ค์ • (WSL ์‚ฌ์šฉ์ž๋งŒ)

1
2
3
4
5
6
# xclip ์„ค์น˜
sudo apt update
sudo apt install xclip

# WSL๊ณผ Windows ํด๋ฆฝ๋ณด๋“œ ์—ฐ๋™ ํ™•์ธ
echo "test" | clip.exe

๐Ÿ“– ์‚ฌ์šฉ๋ฒ•

๋ฐฉ๋ฒ• 1: ํ‚ค๋ณด๋“œ ๋‹จ์ถ•ํ‚ค ์‚ฌ์šฉ (์ถ”์ฒœ)

  1. ์ด๋ฏธ์ง€๋ฅผ ํด๋ฆฝ๋ณด๋“œ์— ๋ณต์‚ฌ (์Šคํฌ๋ฆฐ์ƒท, ๋ณต์‚ฌ ๋“ฑ)
  2. VS Code์—์„œ ๋งˆํฌ๋‹ค์šด ํŒŒ์ผ ์—ด๊ธฐ
  3. Ctrl + Alt + V ๋ˆ„๋ฅด๊ธฐ
  4. ์ž๋™์œผ๋กœ ์ด๋ฏธ์ง€ ์ €์žฅ + ๋งˆํฌ๋‹ค์šด ๊ฒฝ๋กœ๊ฐ€ ํด๋ฆฝ๋ณด๋“œ์— ๋ณต์‚ฌ๋จ
  5. Ctrl + V๋กœ ๋ถ™์—ฌ๋„ฃ๊ธฐ

๋ฐฉ๋ฒ• 2: ํ„ฐ๋ฏธ๋„์—์„œ ์ง์ ‘ ์‹คํ–‰

1
npm run paste

๋ฐฉ๋ฒ• 3: VS Code Command Palette

  1. Ctrl + Shift + P
  2. โ€œTasks: Run Taskโ€ ๊ฒ€์ƒ‰
  3. โ€œPaste Imageโ€ ์„ ํƒ

๐Ÿ“ ํŒŒ์ผ ๊ตฌ์กฐ

1
2
3
4
5
6
7
8
9
jeonseonghu.github.io/
โ”œโ”€โ”€ assets/images/           # ์ด๋ฏธ์ง€๊ฐ€ ์ €์žฅ๋˜๋Š” ํด๋”
โ”œโ”€โ”€ paste-image.js          # ๋ฉ”์ธ ์Šคํฌ๋ฆฝํŠธ
โ”œโ”€โ”€ package.json            # Node.js ์„ค์ •
โ”œโ”€โ”€ .vscode/
โ”‚   โ”œโ”€โ”€ tasks.json         # VS Code ์ž‘์—… ์„ค์ •
โ”‚   โ””โ”€โ”€ keybindings.json   # ํ‚ค๋ณด๋“œ ๋‹จ์ถ•ํ‚ค ์„ค์ •
โ””โ”€โ”€ _posts/
    โ””โ”€โ”€ *.md               # ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŠธ๋“ค

โšก ์ž‘๋™ ์›๋ฆฌ

  1. ์ด๋ฏธ์ง€ ์ €์žฅ: ํด๋ฆฝ๋ณด๋“œ์˜ ์ด๋ฏธ์ง€๋ฅผ assets/images/image-[timestamp].png๋กœ ์ €์žฅ
  2. ๊ฒฝ๋กœ ์ƒ์„ฑ: Jekyll ํ˜•์‹์œผ๋กœ ๋งˆํฌ๋‹ค์šด ๊ฒฝ๋กœ ์ƒ์„ฑ: ![Image](/assets/images/ํŒŒ์ผ๋ช…)
  3. ํด๋ฆฝ๋ณด๋“œ ๋ณต์‚ฌ: ์ƒ์„ฑ๋œ ๋งˆํฌ๋‹ค์šด ๊ฒฝ๋กœ๋ฅผ ํด๋ฆฝ๋ณด๋“œ์— ๋ณต์‚ฌ

๐Ÿ› ๏ธ ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…

WSL2์—์„œ ํด๋ฆฝ๋ณด๋“œ ์ ‘๊ทผ ์•ˆ ๋  ๋•Œ:

1
2
3
# Windows์™€ WSL ํด๋ฆฝ๋ณด๋“œ ์—ฐ๋™ ํ™•์ธ
which clip.exe
# ๋งŒ์•ฝ ์—†๋‹ค๋ฉด PATH์— ์ถ”๊ฐ€ ํ•„์š”

๊ถŒํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋‚  ๋•Œ:

1
chmod +x paste-image.js

๐ŸŽจ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•

paste-image.js์—์„œ ๋‹ค์Œ์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

  • ํŒŒ์ผ๋ช… ํ˜•์‹ (generateFileName ํ•จ์ˆ˜)
  • ์ €์žฅ ๊ฒฝ๋กœ
  • ๋งˆํฌ๋‹ค์šด ํ…œํ”Œ๋ฆฟ ํ˜•์‹