Zammad: HTML ์ด๋ฉ”์ผ ์ง€์› ๋น„ํ™œ์„ฑํ™”(์„ ํƒ ์‚ฌํ•ญ)

์— ๋งŒ๋“  2016๋…„ 10์›” 28์ผ  ยท  15์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: zammad/zammad

HTML ์ด๋ฉ”์ผ ์ง€์›์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ์˜ต์…˜์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์„ ํƒํ•œ ๊ฒฝ์šฐ:

  • ๋ฉ”์‹œ์ง€, ํ…œํ”Œ๋ฆฟ, ๋ฐ”๋‹ฅ๊ธ€ ๋“ฑ์˜ ํŽธ์ง‘๊ธฐ๋Š” ์ผ๋ฐ˜ ํ…์ŠคํŠธ ํ•„๋“œ๋กœ ๋Œ€์ฒด๋  ์ˆ˜/์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ๋“ค์–ด์˜ค๋Š” ๋ฉ”์‹œ์ง€๋Š” ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํ…์ŠคํŠธ/์ผ๋ฐ˜์œผ๋กœ ๋ณ€ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ณด๋‚ด๋Š” ๋ฉ”์‹œ์ง€๋Š” ํ…์ŠคํŠธ/์ผ๋ฐ˜์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
enhancement

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์ด ๋ฌธ์ œ๋ฅผ ๋‹ค์‹œ ์ŠคํฌํŠธ๋ผ์ดํŠธ๋กœ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. Github์—์„œ ์˜ค๋Š” ์ฃผ์†Œ ๊ตฌ์„ฑ ์ด๋ฉ”์ผ์€ ์ด์ œ ์ž˜๋ชป๋œ ํ˜•์‹์˜ html์ด๋ฏ€๋กœ ProofPoint์™€ ๊ฐ™์€ ์ œํ’ˆ์ด ์ „์†ก ์ค‘์ธ ์ด๋ฉ”์ผ์„ ๋งน๊ธ€๋งํ•ฉ๋‹ˆ๋‹ค. ๊นจ์ง€๊ธฐ ์‰ฌ์šด html ํ˜•์‹์œผ๋กœ ์ธํ•ด ์ƒ์—…์šฉ ์ „์ž ๋ฉ”์ผ ํ•„ํ„ฐ์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฏ€๋กœ ์ผ๋ฐ˜ ํ…์ŠคํŠธ ์ „์ž ๋ฉ”์ผ์— ๋Œ€ํ•œ ์š•๊ตฌ๋ฅผ ๋‹ค์‹œ ํ•œ ๋ฒˆ ๊ฒ€ํ† ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. GitHub์—์„œ ๋ชจ๋“  ๊ณต๊ธ‰์—…์ฒด์— ๋Œ€ํ•œ ํšŒ๊ท€ ํ…Œ์ŠคํŠธ๋ฅผ ๊ธฐ๋Œ€ํ•˜๋Š” ๊ฒƒ์€ ๋น„ํ•ฉ๋ฆฌ์ ์ด๋ผ๋Š” ๋ฐ ๋™์˜ํ•˜์ง€๋งŒ ์ด๋ฉ”์ผ ์ „๋‹ฌ ํ˜•์‹์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์—†์œผ๋ฉด GitHub์—์„œ ์ด๋Ÿฌํ•œ ํšŒ๊ท€ ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•  ์ฑ…์ž„์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  15 ๋Œ“๊ธ€

์•ˆ๋…•ํ•˜์„ธ์š” @MichaelHierweck

๋‚˜์—๊ฒŒ ๋” ๋ช…ํ™•ํ•˜๊ฒŒํ•˜๊ธฐ ์œ„ํ•ด. HTML ์ด๋ฉ”์ผ์˜ ๋ฌธ์ œ์ (์‚ฌ์šฉ ์‚ฌ๋ก€)์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์ฐธ๊ณ : ์—์ด์ „ํŠธ๋งŒ html ์ด๋ฉ”์ผ์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ชจ๋“  ๋ฐœ์‹  ์ด๋ฉ”์ผ์—๋Š” "์ผ๋ฐ˜ ํ…์ŠคํŠธ" ์ฒจ๋ถ€ ํŒŒ์ผ์ด ์ฒจ๋ถ€๋ฉ๋‹ˆ๋‹ค(๋”ฐ๋ผ์„œ pine/mutt ๋“ฑ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ถˆ์ด์ต์ด ์—†์Šต๋‹ˆ๋‹ค).

-๋‚จ์ž ์ด๋ฆ„

์šฐ๋ฆฌ์˜ ๋น„์ฆˆ๋‹ˆ์Šค ํŒŒํŠธ๋„ˆ๋Š” ๊ตฌ์‹์ด๋ฉฐ ์•ˆ์ „์„ ์ค‘์š”ํ•˜๊ฒŒ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ์ด๋ฉ”์ผ์ด ํ…์ŠคํŠธ/์ผ๋ฐ˜ ๋ฐ GnuPG ์„œ๋ช…์ด ๋  ๊ฒƒ์œผ๋กœ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ 2016๋…„์—๋Š” ๊ตฌ์‹์ผ์ง€๋„...;;;

GnuPG๋Š” ํ›Œ๋ฅญํ•˜๊ณ  html ์ด๋ฉ”์ผ๋กœ๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค(text+html์ด ์žˆ๋Š” ๋ฉ€ํ‹ฐํŒŒํŠธ). :)

๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ํ…์ŠคํŠธ ์ „์šฉ ์ด๋ฉ”์ผ์—๋„ ๊ด€์‹ฌ์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์ด ๋ฌธ์ œ๋ฅผ ๊ณ„์† ๊ณต๊ฐœํ•ฉ๋‹ˆ๋‹ค.

์ €๋„ ๋ณดํ†ต ๋ฌธ์ž๋กœ ๋œ ์ด๋ฉ”์ผ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋‚ด ์ด๋ฉ”์ผ ํ”„๋กœ๊ทธ๋žจ์—์„œ๋Š” ํŠน๋ณ„ํ•œ ๊ฒฝ์šฐ์—๋งŒ HTML ๋ฉ”์ผ๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์œผ๋กœ ๋งํ•˜๋ฉด ์˜ค๋Š˜๋‚  ์ €์™€ ๊ฐ™์€ ๊ตฌ์‹ ์‚ฌ์šฉ์ž๋Š” HTML ๋ฉ”์ผ์ด ํ‘œ์ค€์ด๋ผ๋Š” ์‚ฌ์‹ค์„ ๋ฐ›์•„๋“ค์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

zammad์˜ ๊ฒฝ์šฐ ํ…์ŠคํŠธ ์ „์šฉ ์ด๋ฉ”์ผ ํŽธ์ง‘๊ธฐ๊ฐ€ ์žˆ์œผ๋ฉด ์—ฌ์ „ํžˆ ๋„์›€์ด ๋  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‚ด์žฅ ํŽธ์ง‘๊ธฐ์—๋Š” HTML ํŽธ์ง‘์— ๋งŽ์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค ... ์˜ค๋Š˜์€ ๊ทธ๋Ÿฐ ๋ฒ„๊ทธ๊ฐ€ ๋ฐœ์ƒํ•˜์ž๋งˆ์ž zammad๋ฅผ ์—ฝ๋‹ˆ ๋‹ค. Thunderbird๋กœ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๊ณ  ๊ฑฐ๊ธฐ์—์„œ ์‘๋‹ตํ•˜์‹ญ์‹œ์˜ค. ์ด๊ฒƒ์€ ๊ฝค ์ž์ฃผ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์ด ์š”์ฒญ์„ ์ ๊ทน ์ง€์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์›์น™์ ์œผ๋กœ HTML ๋ฉ”์ผ์„ ์“ฐ์ง€ ์•Š์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๊ณ ๊ฐ์—๊ฒŒ ํ‘œ ํ˜•์‹์˜ ๊ฐœ์š”์™€ ๋“ค์—ฌ์“ฐ๊ธฐ ํ˜•์‹์˜ ์ •๋ณด๋ฅผ ๋ณด๋‚ด๋Š” ๋ฐ ์ต์ˆ™ํ•˜๊ธฐ ๋•Œ๋ฌธ์—

 | row 1    | row 2    |
 +----------+----------+
 | field 11 | field 21 |
 |   sub 11 |          |
 | field 12 | field 22 |
 +----------+----------+

ํ˜•์‹์ด ์ง€์ •๋œ ํ™˜๊ฒฝ์—์„œ ๋ณผ ๋•Œ ์—‰์„ฑํ•˜๊ณ  ์ฝ์„ ์ˆ˜ ์—†์œผ๋ฉฐ ๋น„์ „๋ฌธ์ ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค.

+----------+----------+
| ํ–‰ 1 | ํ–‰ 2 |
+----------+----------+
| ํ•„๋“œ 11 | ํ•„๋“œ 21 |
| ์„œ๋ธŒ 11 | |
| ํ•„๋“œ 12 | ํ•„๋“œ 22 |
+----------+----------+

๊ฐ ์—์ด์ „ํŠธ๊ฐ€ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋ณธ ํ˜•์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ”์ผ๋ณ„๋กœ ํ˜•์‹์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ด์ƒ์ ์ž…๋‹ˆ๋‹ค.

์ˆ˜์‹  ๋ฉ”์ผ์„ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋Š”์ง€ ์™„์ „ํžˆ ํ™•์‹ ํ•  ์ˆ˜ ์—†์ง€๋งŒ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.

  • ์ˆ˜์‹  ๋ฉ”์ผ์€ ํ…์ŠคํŠธ/์ผ๋ฐ˜: ๊ณ ์ •ํญ/ํ…”๋ ˆํƒ€์ดํ”„ ๊ธ€๊ผด๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋‹ต์žฅ์€ ๋ฌธ์ž/์ผ๋ฐ˜์œผ๋กœ๋งŒ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ˆ˜์‹  ๋ฉ”์ผ์€ text/html _and_ text/plain: HTML ํ˜•์‹์˜ ๋ถ€๋ถ„์„ ํ‘œ์‹œํ•˜๊ณ  ์œ ์ง€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์‘๋‹ต์„ ์œ„ํ•ด ์—์ด์ „ํŠธ๋Š” plain๊ณผ html ์ค‘์—์„œ ์„ ํƒํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์›๋ณธ ๋ฉ”์ผ์˜ ๊ฐ ๋ถ€๋ถ„์ด ์ธ์šฉ ๋ถ€๋ถ„์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. html ๋ฉ”์ผ์˜ ํ…์ŠคํŠธ ์ „์šฉ ๋ถ€๋ถ„์„ ์ธ์šฉํ•˜๋ฉด ์ด ๋ถ€๋ถ„์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค(ํŠนํžˆ ํ…Œ์ด๋ธ”, ๋ชฉ๋ก ๋“ฑ์ด ํฌํ•จ๋œ ๊ฒฝ์šฐ). ๋”ฐ๋ผ์„œ ํ˜•์‹์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋Š” ์˜ต์…˜์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์ˆ˜์‹  ๋ฉ”์ผ์€ text/html ์ „์šฉ: plain/html ๋ฉ”์ผ๊ณผ ๋™์ผ

๊ทธ๋ƒฅ ๋‚ด 2c

์ด๊ฒƒ์€ ๋งค์šฐ ์ค‘์š”ํ•˜๋ฏ€๋กœ ์ด์— ๋Œ€ํ•ด ๋…ผํ‰ํ•˜๊ธฐ ์œ„ํ•ด ๋ฐฉ๊ธˆ github ๊ณ„์ •์„ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. HTML ๋ฉ”์ผ์„ ์‚ฌ์šฉํ•˜๋ฉด ์—…๋ฌด์— Zammad๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. HTML ๋ฉ”์ผ์„ ๋ณด๋‚ด๋ฉด ์šฐ๋ฆฌ ํšŒ์‚ฌ๊ฐ€ ๋ฐ”๋ณด์ฒ˜๋Ÿผ ๋ณด์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ „์ž ๋ฉ”์ผ์šฉ HTML์€ ๋Œ€๋ถ€๋ถ„์˜ ์ „๋ฌธ๊ฐ€์—๊ฒŒ ์•…์˜์ ์ธ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค. ์œ„ํ‚คํ”ผ๋””์•„์— ์„ค๋ช…์ด ๋˜์–ด ์žˆ์–ด์„œ ์ด๊ฒŒ ์ƒ์‹์ด ๋  ๊ฑฐ๋ผ ์˜ˆ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

HTML์€ ๋„ˆ๋ฌด ์ž์ฃผ ์‚ฌ์šฉ๋˜๋ฉฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

  • ๋ณด์•ˆ ๋ฌธ์ œ๋“ค. (์ž„๋ฒ ๋””๋“œ ํŠธ๋ž˜์ปค ํ•ญ๋ชฉ, JS, CSS...)
  • ์ž˜๋ชป๋œ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ์Šคํƒ€์ผ๊ณผ ๊ฒฐํ•ฉ๋œ ์ด๋ฉ”์ผ์— ๋Œ€ํ•œ ์ž˜๋ชป๋œ ๊ธฐ๋Œ€(์˜ˆ: ์ ์ ˆํ•œ ์ธ์šฉ ๋Œ€์‹  ์ƒ‰์ƒ ์‚ฌ์šฉ)
  • ํ›จ์”ฌ ๋” ๋ณต์žกํ•œ ์ž๋™ ์ฒ˜๋ฆฌ(MIME ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ†ตํ•ด ๊ธธ์„ ์ฐพ์€ ๋‹ค์Œ ํƒœ๊ทธ๋ฅผ ์ œ๊ฑฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค...)
  • ํ›จ์”ฌ ๋” ํฐ ํฌ๊ธฐ
  • ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ(MUA๊ฐ€ HTML์„ ์ฒ˜๋ฆฌํ•  ๊ฒƒ์œผ๋กœ ๊ธฐ๋Œ€ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค!)
  • ์žฅ์• ์ธ์˜ ์ ‘๊ทผ์„ฑ ๋ฌธ์ œ. ์ƒ‰๋งน ๋˜๋Š” ์™„์ „ ๋งน์ธ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•ด ์ƒ๊ฐํ•ด ๋ณด์‹ญ์‹œ์˜ค.
  • ๋งค์šฐ ์„œํˆฌ๋ฅธ ํŽธ์ง‘. Zammad๊ฐ€ ์‹ค์ œ๋กœ ๊ฐ€์žฅ ์ข‹์€ ์˜ˆ์ž…๋‹ˆ๋‹ค. ํ•ด๋‹น HTML ๋ฉ”์ผ์€ ํŽธ์ง‘๊ธฐ์˜ PITA์ž…๋‹ˆ๋‹ค.
  • ์ธ์šฉ. ">"๋ฅผ ์–ด๋–ป๊ฒŒ ์‚ฝ์ž…ํ•˜๊ณ  ์–ด๋””์— ์žˆ์Šต๋‹ˆ๊นŒ? ๊ทธ ์ค‘๊ฐ„์— blockquote-, p-, div-tag ๋˜๋Š” img๊ฐ€ ์žˆ์œผ๋ฉด ์–ด๋–ป๊ฒŒ ํ•ฉ๋‹ˆ๊นŒ?
  • ๋…์ผ BSI๋Š” HTML์„ ์ผ๋ฐ˜ ํ…์ŠคํŠธ๋กœ ํ‘œ์‹œํ•  ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ–ฅํ›„ ๊ทœ์ • ์ค€์ˆ˜ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์œผ๋กœ ์ˆ˜์‹ ์ž๋Š” ์ „์ž ๋ฉ”์ผ์ด ํ‘œ์‹œ/ํ˜•์‹ํ™”๋˜๋Š” ๋ฐฉ๋ฒ•์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. HTML์€ ์ด ๊ทœ์น™์„ ๊นจ๊ณ  ๋ฐœ์‹ ์ž๊ฐ€ ๋ฉ‹์ง„(์ฝ์„ ์ˆ˜ ์—†๋Š”?) ๊ธ€๊ผด, ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๋ฐ ๊ธฐํƒ€ ์ข…์†Œ๋ฆฌ๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•˜๋Š” ๋ฐ˜๋ฉด ์ˆ˜์‹ ์ธ์˜ ํด๋ผ์ด์–ธํŠธ์—์„œ๋Š” ์„ค์ •์— ๋”ฐ๋ผ ๋ถ€๋ถ„์ ์œผ๋กœ ๋˜๋Š” ์™„์ „ํžˆ ์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋ณด๋‚ธ ์‚ฌ๋žŒ์˜ ๊ธฐ๋Œ€๊ฐ€ ์ถฉ์กฑ๋˜์ง€ ์•Š์•˜์Œ์„ ์˜๋ฏธํ•˜์ง€๋งŒ ๋ฐ›๋Š” ์‚ฌ๋žŒ์€ ๋ฉ”์ผ์ด ๋ณด๋‚ธ ์‚ฌ๋žŒ์ด ์˜ˆ์ƒํ•œ ๋Œ€๋กœ ํ‘œ์‹œ๋˜๋Š”์ง€ ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ผ๋ฐ˜ ํ…์ŠคํŠธ์—์„œ๋Š” ๋ฐœ์ƒํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ํ‰๋ฌธ ์ฒ˜๋ฆฌ๊ฐ€ ํ•ญ์ƒ ๊ฐœ๋ฐœ์—์„œ ๊ฐ€์žฅ ๋จผ์ € ์™€์•ผ ํ•˜๊ณ  ๋” ๋†’์€ ์šฐ์„  ์ˆœ์œ„๋ฅผ ๊ฐ€์ ธ์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. HTML์€ ๊ทธ ๋ฐ˜๋Œ€๊ฐ€ ์•„๋‹ˆ๋ผ ์ถ”๊ฐ€ ์š”์†Œ๋กœ ๊ฐ„์ฃผ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋™์˜ํ•˜๊ณ  ๋”ฐ๋ผ์„œ ์ด ๋ฌธ์ œ๋ฅผ ์ง€์ง€ํ•ฉ๋‹ˆ๋‹ค

dito, ์ฒซ ๋ฒˆ์งธ ๋Œ“๊ธ€ ์ดํ›„๋กœ ์ด ์˜ต์…˜์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋จผ์ € Zammad ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ์— ์ฐธ์—ฌํ•ด์ฃผ์…”์„œ ์ง„์‹ฌ์œผ๋กœ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด๊ฒƒ์ด ํ•„์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ˜„์žฌ ์˜ˆ์ •๋œ ๊ธฐ๋Šฅ์˜ (์งง์€) ๋ชฉ๋ก์— ์—†์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์šฐ๋ฆฌ๊ฐ€ ์Šคํฐ์„œ๋ฅผ ์ฐพ์ง€ ์•Š๋Š” ํ•œ ์ ์–ด๋„ ๋‚ด๋…„์—๋Š” ์ž‘์—…ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž„์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋˜ ๋‹ค๋ฅธ ์˜ต์…˜์€ pull ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” Zammad ๋ฐฉ์‹์œผ๋กœ ํ•„์š”ํ•œ ํ’ˆ์งˆ๊ณผ ํ˜•ํƒœ๋กœ ๊ทธ๊ฒƒ์„ ์–ป์„ ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๊ฒŒ ๋œ ๊ฒƒ์„ ๊ธฐ์˜๊ฒŒ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
์ •์˜๋œ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ์ž…๋ ฅ์ด ์—†์œผ๋ฉฐ ์ด๋ฏธ ๋ช…ํ™•ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ถฉ๋™์„ ์ดˆ๊ธฐ ๊ฒŒ์‹œ๋ฌผ์˜ ์ด๋ชจํ‹ฐ์ฝ˜์œผ๋กœ ์ œํ•œํ•ด ์ฃผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์˜๊ฒฌ์„ ๋ณด๋‚ด๋ฉด ๋งŽ์€ ์†Œ์Œ์ด ๋ฐœ์ƒํ•˜๊ณ  Zammad์— ๋Œ€ํ•œ ์ž‘์—…์—์„œ ์ฃผ์˜๊ฐ€ ๋ถ„์‚ฐ๋˜๊ณ  ์†๋„๊ฐ€ ๋Š๋ ค์ง‘๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋Œ€ํ™”๋ฅผ ์ž ๊ฐ€์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด์— ์ ํ•ฉํ•œ ์žฅ์†Œ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ฒŒ์‹œํŒ https://community.zammad.org/ ์—์„œ ์ž์œ ๋กญ๊ฒŒ ์ƒ์ƒํ•œ ํ† ๋ก ์„ ์‹œ์ž‘
์ดํ•ด์™€ ์ง€์›์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

์ด ๋ฌธ์ œ๋ฅผ ๋‹ค์‹œ ์ŠคํฌํŠธ๋ผ์ดํŠธ๋กœ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. Github์—์„œ ์˜ค๋Š” ์ฃผ์†Œ ๊ตฌ์„ฑ ์ด๋ฉ”์ผ์€ ์ด์ œ ์ž˜๋ชป๋œ ํ˜•์‹์˜ html์ด๋ฏ€๋กœ ProofPoint์™€ ๊ฐ™์€ ์ œํ’ˆ์ด ์ „์†ก ์ค‘์ธ ์ด๋ฉ”์ผ์„ ๋งน๊ธ€๋งํ•ฉ๋‹ˆ๋‹ค. ๊นจ์ง€๊ธฐ ์‰ฌ์šด html ํ˜•์‹์œผ๋กœ ์ธํ•ด ์ƒ์—…์šฉ ์ „์ž ๋ฉ”์ผ ํ•„ํ„ฐ์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฏ€๋กœ ์ผ๋ฐ˜ ํ…์ŠคํŠธ ์ „์ž ๋ฉ”์ผ์— ๋Œ€ํ•œ ์š•๊ตฌ๋ฅผ ๋‹ค์‹œ ํ•œ ๋ฒˆ ๊ฒ€ํ† ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. GitHub์—์„œ ๋ชจ๋“  ๊ณต๊ธ‰์—…์ฒด์— ๋Œ€ํ•œ ํšŒ๊ท€ ํ…Œ์ŠคํŠธ๋ฅผ ๊ธฐ๋Œ€ํ•˜๋Š” ๊ฒƒ์€ ๋น„ํ•ฉ๋ฆฌ์ ์ด๋ผ๋Š” ๋ฐ ๋™์˜ํ•˜์ง€๋งŒ ์ด๋ฉ”์ผ ์ „๋‹ฌ ํ˜•์‹์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์—†์œผ๋ฉด GitHub์—์„œ ์ด๋Ÿฌํ•œ ํšŒ๊ท€ ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•  ์ฑ…์ž„์ด ์žˆ์Šต๋‹ˆ๋‹ค.

https://useplaintext.email/
https://useplaintext.email/# ์ด์œ  - ์ผ๋ฐ˜ ํ…์ŠคํŠธ

๋‚˜๋Š” ์ด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ธฐ ์œ„ํ•ด ์•ฝ๊ฐ„์˜ ๋ˆ์„ ๊ธฐ๊บผ์ด ํˆฌ์žํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์กฐ๊ธˆ ๋‘˜๋Ÿฌ๋ณด์•˜๊ณ  prioritised by payment ํƒœ๊ทธ๊ฐ€ ๋ถ™์€ ๋‹ค๋ฅธ ๋งŽ์€ GitHub ๋ฌธ์ œ๋ฅผ ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๋“ค์ด๋ณด๊ณ  ์‹ถ์€ ๊ธฐ๋Šฅ ํŽ€๋“œ ํŠน์ • ์‚ฌ์šฉ์ž์— ๋Œ€ํ•ด ๊ฐ€๋Šฅํ•œ ์ˆ˜๋‹จ์„ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •?

๋‚˜๋Š” ๋˜ํ•œ ์ผ๋ฐ˜ ํ…์ŠคํŠธ ๋ฉ”์ผ์— ๋Œ€ํ•œ ์ง€์›์„ ์ •๋ง๋กœ ์›ํ•ฉ๋‹ˆ๋‹ค. @fthommen์ด ์ง€์ ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ์œ ์—ฐํ•˜๋‹ค๋ฉด ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค.

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋‹ค์‹œ ๋‚ด ๋ ˆ์ด๋” ์•„๋ž˜์— ๋–จ์–ด์กŒ์Šต๋‹ˆ๋‹ค.
[at] zammad [dot] com ์˜์—…๋ถ€์— ๋ฌธ์˜ํ•˜์‹ญ์‹œ์˜ค.

์šฐ๋ฆฌ ๋™๋ฃŒ๋“ค์ด ๋น„์šฉ์„ ํŒŒ์•…ํ•˜๊ณ  ๋„ˆ๋ฌด ๋งŽ์€ ๊ฒฝ์šฐ ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์ด ์ด๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ง€๋ถˆ ํ’€ ์ž๊ฒฉ์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ์ƒ๊ฐ์— ์ด๊ฒƒ์€ ํ˜„์žฌ Zammad์˜ ํŽธ์ง‘์ž๊ฐ€ ๋  ๋ฏธ๋ž˜์— ์˜ํ•ด ์ฐจ๋‹จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
Zammad๋Š” ํ˜„์žฌ ๊ท€ํ•˜๊ฐ€ ๋ฉ”์ผ์„ ํฌ๋งทํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ์•Œ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์—†์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ๋ชจ๋“  ์ด๋ฉ”์ผ์—์„œ html ๋ถ€๋ถ„์˜ ์ „์†ก์„ ์™„์ „ํžˆ ๋น„ํ™œ์„ฑํ™”ํ•˜๋ ค๋Š” ๋น„๊ณต์‹์ ์ธ ๋น ๋ฅธ ํ•ดํ‚น์ž…๋‹ˆ๋‹ค.
๊ฒฝ๊ณ : ์•„์ง ์ƒ์‚ฐ ํ…Œ์ŠคํŠธ๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š์•˜์œผ๋ฉฐ ๋‹ค๋ฅธ ๋ถ€ํ’ˆ์ด ํŒŒ์†๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ฃผํ–‰ ๊ฑฐ๋ฆฌ๊ฐ€ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ Zammad๋ฅผ ์ง์ ‘ ์‹คํ–‰ํ•˜๊ณ  ์„ค์น˜๋ฅผ ์ ์šฉ, ํ…Œ์ŠคํŠธ ๋ฐ ๋””๋ฒ„๊ทธํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๊ณ  ์žˆ๋Š” ์ „๋ฌธ๊ฐ€๋ฅผ ์œ„ํ•œ ํŒจ์น˜์ž…๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ๋ณด์•ˆ์ƒ์˜ ์ด์œ ๋กœ ๋ฌธ์ž/์ผ๋ฐ˜ ๋ฉ”์ผ๋งŒ ๋ณด๋‚ด๊ณ  ์‹ถ๋‹ค๋ฉด ์‹œ๋„ํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

```ํŒจ์น˜
--- app/models/channel/email_build.rb.org 2021-03-18 17:43:54.776830273 +0100
+++ ์•ฑ/๋ชจ๋ธ/์ฑ„๋„/email_build.rb 2021-03-18 17:49:45.262137627 +0100
@@ -63,4 +63,9 @@
# ์ผ๋ฐ˜ ๋ถ€๋ถ„ ์ƒ์„ฑ
์†์„ฑ[:๋ฐ”๋””] = ์†์„ฑ[:๋ฐ”๋””].html2ํ…์ŠคํŠธ
+

  • # ๋ฌธ์ž/์ผ๋ฐ˜ ๋ฉ”์ผ๋งŒ ๋ณด๋‚ด๋Š” ํ•ดํ‚น, ๊ธฐ๋Šฅ ์š”์ฒญ ์ฐธ์กฐ
  • # https://github.com/zammad/zammad/issues/325
  • # ๋ณด๋‚ผ ์ˆ˜ ์—†๋„๋ก ์ƒ์„ฑ๋œ html_alternative ๋ถ€๋ถ„์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.
  • html_alternative = ๊ฑฐ์ง“
    ๋

``` (applied against zammad Version: 3.6.0-1615986441.da478686.buster from the official Debian Buster package, /opt/zammad`)

์šฐ๋ฆฌ๋Š” ์–ผ๋งˆ ์ „์— ์ด ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด Zammad ์˜์—…ํŒ€์— ์—ฐ๋ฝ์„ ์ทจํ–ˆ๋Š”๋ฐ ์šฐ๋ฆฌ ์˜ˆ์‚ฐ์„ ์ดˆ๊ณผํ•˜๋Š” ์ง„์งœ ์ž‘์€ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋˜์–ด์•ผ ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์˜€์Šต๋‹ˆ๋‹ค. ๋Œ€์‹  ์šฐ๋ฆฌ๋Š” ์ž๋ฐœ์ ์œผ๋กœ https://www.zammad-foundation.org/์— ์ž‘์€ ์„ธ ์ž๋ฆฌ ๊ธˆ์•ก์„ ์ง€๋ถˆํ•˜์—ฌ ๊ทธ๋“ค์ด ๋ฉ‹์ง„ ์ž์œ  ์†Œํ”„ํŠธ์›จ์–ด ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ณด์ƒ์„ ๋ฐ›๊ณ  ์œ ์ง€ํ•˜๋„๋ก ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ํŒจ์น˜๊ฐ€ ๋งˆ์Œ์— ๋“ ๋‹ค๋ฉด Zammad ์žฌ๋‹จ๋„ ์ง€๋ถˆํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•˜์‹ญ์‹œ์˜ค. :)

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰