์ด ๋ฌธ์„œ์˜ ์›๋ณธ์€ ์™ธ๋ถ€ ์œ„ํ‚ค์—์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.


ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ Vim


ํŒŒ์ผ ํƒ์ƒ‰๊ธฐ Midnight Commander


๋ฆฌ๋ˆ…์Šค ์ปค๋„ ์„ค์ • ํ”„๋กœ๊ทธ๋žจ menuconfig. ๋ฆฌ๋ˆ…์Šค ์ปค๋„์„ ์ง์ ‘ ์ปดํŒŒ์ผํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ๋งˆ์ฃผ์น  ์ผ์€ ์—†์œผ๋ฉฐ, GUI ํ™˜๊ฒฝ์„ ์ง€์›ํ•˜๋Š” xconfig๋„ ์žˆ๋‹ค.

1. ๊ฐœ์š”2. CLI์™€๋Š” ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅธ๊ฐ€?
2.1. ๋ฒ„ํผ์˜ ์ฐจ์ด2.2. ๋ฌธ์ž์˜ ์ฐจ์ด
3. ๊ด€๋ จ ํ•ญ๋ชฉ

1. ๊ฐœ์š”[ํŽธ์ง‘]

ํ…์ŠคํŠธ ๊ธฐ๋ฐ˜ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค(Text-based User Interface). CLI์™€๋Š” ๋‹ค๋ฅด๋‹ค. ๋ฌธ์ž๋ฅผ ์˜๋ฏธ์˜ ํ‘œํ˜„ ๋ฟ ์•„๋‹ˆ๋ผ ๋ ˆ์ด์•„์›ƒ์˜ ํ‘œํ˜„์—๋„ ์ด์šฉํ•˜๋Š”, ์ผ์ข…์˜ ๊ทธ๋ž˜ํ”ฝ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค. ์‰ฝ๊ฒŒ ๋งํ•ด CLI์™€ GUI์˜ ์ค‘๊ฐ„ ์„ฑ๊ฒฉ์„ ๊ฐ€์ง„ ์ธํ„ฐํŽ˜์ด์Šค๋ผ๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.

์ค‘๊ฐ„ ์„ฑ๊ฒฉ์ด๋ผ๊ณ  ํ–ˆ๋Š”๋ฐ, ์‚ฌ์‹ค CLI์˜ ์žฅ์  ๋Œ€๋ถ€๋ถ„์„ ๊ฐ€์ ธ์˜ค๋ฉด์„œ GUI์˜ ๊ผญ ํ•„์š”ํ•œ ์žฅ์ ๋“ค๋งŒ ๊ณจ๋ผ๋‹ค ๋งŒ๋“  ์ธํ„ฐํŽ˜์ด์Šค๋ผ๊ณ  ๋ณด๋ฉด ๋˜๊ฒ ๋‹ค. TUI๊ฐ€ ๋Œ€๋‘๋œ ์ดˆ์ฐฝ๊ธฐ ๋•Œ๋ผ๋ฉด ๋ชฐ๋ผ๋„ ์ง€๊ธˆ ์ปดํ“จํŒ… ํ™˜๊ฒฝ์—์„œ ๋ณดํ†ต GUI์— ๋น„ํ•ด TUI๊ฐ€ ์••๋„์ ์œผ๋กœ ๊ฐ€๋ฒผ์šด ๊ฒƒ์€ ๋ฌผ๋ก ์ด๋‹ค. ๊ทธ ๊ฐ€๋ฒผ์›€์€ ์ปดํ“จํ„ฐ์— ๊ฐ€ํ•ด์ง€๋Š” ์—ฐ์‚ฐ๋Ÿ‰ ์ž์ฒด๋Š” ๋ฌผ๋ก [1], ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ์—์„œ๋„ ํ†ต์šฉ๋˜๋Š” ์ด์•ผ๊ธฐ๋ผ ์ง€๊ธˆ๋„ ์›๊ฒฉ ์ ‘์†์„ ํ†ตํ•œ ์ž‘์—…์„ ํ•  ๋• vim/Emacs์—๋‹ค (GNU)screen/tmux ์กฐํ•ฉ์˜ TUI ํ™˜๊ฒฝ์—์„œ ์ž‘์—…ํ•œ๋‹ค. ํŠธ๋ž˜ํ”ฝ์ด ์••๋„์ ์œผ๋กœ ์ ์–ด์„œ ์›ฌ๋งŒํ•œ ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ์—์„œ ์พŒ์ ํ•˜๊ฒŒ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋‹ค.[2] ๋ฌผ๋ก  ์ด๊ฑด CLI์˜ ์žฅ์ ์ธ๋ฐ, ๊ทธ๋Ÿฌ๋ฉด์„œ๋„ GUI์ฒ˜๋Ÿผ ๋ ˆ์ด์•„์›ƒ์„ ํ†ตํ•˜์—ฌ ์ผ๋ชฉ์š”์—ฐํ•˜๊ณ  ์ง๊ด€์ ์ธ ๋ฐฉ์‹์œผ๋กœ ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๋‹ค. ์œ„์˜ vim ์Šคํฌ๋ฆฐ์ƒท์„ ๋ณด๋ฉด ์ดํ•ด๊ฐ€ ๋  ๊ฒƒ์ด๋‹ค. ํŠนํžˆ TUI๋ผ๊ณ  ๋ฐœ์ „์ด ์•ˆ ๋œ ๊ฑด ์ ˆ๋Œ€ ์•„๋‹ˆ๋ผ์„œ ๋” ์ด์ƒ ํฐ์ƒ‰ ๋ฌธ์ž ํ˜น์€ ๋…น์ƒ‰ ๋ฌธ์ž ์ผ๋ณ€๋„๊ฐ€ ์•„๋‹Œ ๋งจ ์œ„ vim ์Šคํฌ๋ฆฐ์ƒท์ฒ˜๋Ÿผ ์•Œ๋ก๋‹ฌ๋กํ•œ ์ƒ‰์ƒ์„ ์ง€์›ํ•˜๊ณ  ์ด๋ฅผ ํ†ตํ•ด ์ž‘์—…์˜ ํšจ์œจ์„ ๋” ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค. ๊ฑฐ๊ธฐ๋‹ค ์›๊ฒฉ์ ‘์†ํ•œ ์‹œ์Šคํ…œ๊ณผ ๋ฐ€์ฐฉ์„ฑ๋„ ์ข‹๋‹ค.[3]

์ด๋ ‡๊ฒŒ ๋งํ•˜๋ฉด GUI๋ณด๋‹ค ํ›จ์”ฌ ์ข‹์•„ ๋ณด์ด๊ฒ ์ง€๋งŒ TUI์— ๋ช…๋ฐฑํ•œ ํ•œ๊ณ„๊ฐ€ ์กด์žฌํ•œ๋‹ค๋Š” ๊ฑด ์ด๋ฏธ ๋‹ค๋“ค ์ง์ž‘ํ•˜๊ณ  ์žˆ์„ ๊ฒƒ์ด๋‹ค. ์•„๋ฌด๋ฆฌ ๊ทธ๋ž˜๋„ ์™„์ „ํ•œ ๊ทธ๋ž˜ํ”ฝ ํ™˜๊ฒฝ๊ณผ๋Š” ์˜ ๊ฑฐ๋ฆฌ๊ฐ€ ๋ฉ€๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. GUI์˜ ๊ผญ ํ•„์š”ํ•œ ์žฅ์ ๋“ค๋งŒ ๊ณจ๋ž๋‹ค๊ณ  ํ–ˆ๋Š”๋ฐ, ๊ทธ๊ฒŒ ์ฝ”๋”ฉ์ด๋‚˜ ๊ณ ๊ธ‰ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ ๊ฐ™์€ ๊ฒƒ์— ๊ผญ ํ•„์š”ํ•œ ์žฅ์ ์ด๊ณ , ์™„์ „ํ•œ (์ฆ‰ ๋„ํŠธ ๋‹จ์œ„๊นŒ์ง€ ๋‹ค๋ฃจ๋Š”) ๊ทธ๋ž˜ํ”ฝ ํ™˜๊ฒฝ์€ ๋‹น์—ฐํžˆ ๋ถˆํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์ด ํ™˜๊ฒฝ์—์„œ ๋‹น์—ฐํžˆ ์‚ฌ์ง„์ด๋‚˜ ๊ทธ๋ฆผ, ๋™์˜์ƒ ๊ฐ™์€ ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด๋Š” ๊ฟˆ๋„ ๋ชป ๊พผ๋‹ค.[4][5] ๋‹น์—ฐํžˆ ๊ฒŒ์ž„์ด๋‚˜ ์›น ์„œํ•‘๋„ ๊ต‰์žฅํžˆ ์ œํ•œ์ ์ด๋‹ค. ๋‹จ์ ์ธ ์˜ˆ๋กœ ์•„๋ž˜์˜ w3m์„ ์ƒ๊ฐํ•ด ๋ณด์ž. ๋ฌผ๋ก  ํฌํ† ์ƒต ๊ฐ™์€ ๊ทธ๋ž˜ํ”ฝ ์ž‘์—…์€ ๋งํ•  ๊ฒƒ๋„ ์—†์„ ๊ฒƒ์ด๋‹ค. ๋‹ค๋งŒ ์ด๋ ‡๊ฒŒ ํ•œ๊ณ„๋กœ ์ œ์‹œํ•œ ๊ฒƒ๋“ค์€ ์‚ฌ์‹ค TUI๊ฐ€ ํ•„์š”ํ•  ๋งŒํ•œ ์˜์—ญ๊ณผ ์• ์ดˆ๋ถ€ํ„ฐ ๊ฑฐ๋ฆฌ๊ฐ€ ๋ฉ€๋‹ค. ๋ฐ˜๋Œ€๋กœ TUI์˜ ๊ฐ•์ ๋“ค์€ ์‚ฌ์‹ค ๋‹จ์ผ ํด๋ผ์ด์–ธํŠธ ์ƒ์˜ ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ํ™˜๊ฒฝ์—์„œ ์‹ ๊ฒฝ์“ธ ๋งŒํ•œ ์‚ฌํ•ญ์ด ์•„๋‹ˆ๋‹ค. ์ฆ‰ ์„œ๋กœ ์ž˜ ์ปค๋ฒ„ํ•˜๋Š” ์˜์—ญ์ด ๋‹ค๋ฅด๊ณ  ์–ด๋А ํ•œ ์ชฝ์ด ๋ฐ˜๋Œ€ ์ชฝ ์˜์—ญ๊นŒ์ง€ ๋‹ค ์ปค๋ฒ„ํ•˜๋Š” ๊ฒŒ ํž˜๋“ค๊ฑฐ๋‚˜ ๊ทธ๋Ÿด ํ•„์š”๊ฐ€ ์—†์„ ๋ฟ์ด๋‹ค.[6] ๋”ฐ๋ผ์„œ ์–ด๋А ํ•œ ์ชฝ์ด ์šฐ์›”ํ•˜๋‹ค๋А๋‹ˆ ๋…ผํ•˜๋Š” ๊ฑด ๋ณ„ ์˜๋ฏธ ์—†๋‹ค.

TUI์˜ ๋‹จ์ ์„ ๋” ๊ผฝ์ž๋ฉด, CLI์™€ GUI์˜ ์ค‘๊ฐ„ ์„ฑ๊ฒฉ์ด๋ผ๋Š” ๊ฒŒ TUI ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ์—๋„ ์ ์šฉ๋œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. GUI ํ”„๋กœ๊ทธ๋žจ์„ ์งœ๋Š” ๊ฒƒ๋ณด๋‹จ ๋œ ๋‚œ๊ฐํ•˜๊ฒ ์ง€๋งŒ CLI ํ”„๋กœ๊ทธ๋žจ๋ณด๋‹ค ๋” ๋ณต์žกํ•œ ๊ฑด ๋‹น์—ฐํ•œ ์ผ์ด๊ฒ ๋‹ค. ๋ฌผ๋ก  TUI ์งค ๋•Œ๋‚˜ GUI ์งค ๋•Œ๋‚˜ ์• ์ดˆ๋ถ€ํ„ฐ ์‚ฌ์šฉ์ž์˜ ํŽธ์˜์„ฑ์„ ๊ณ ๋ คํ•˜๋ฉด ๊ณ ๋ คํ•  ์ˆ˜๋ก ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ•˜๊ธฐ๊ฐ€ ์–ด๋ ค์›Œ์ง„๋‹ค๋Š” ์‚ฌ์‹ค์ด ๋˜‘๊ฐ™์ด ์ ์šฉ๋˜๋Š” ๊ฒƒ์ผ ๋ฟ์ด๊ฒ ์ง€๋งŒ. ๋‹จ์ ์ด๋ผ๊ธฐ๋ณด๋‹จ ์•ฝ๊ฐ„ ์—ฌ๋‹ด์ด๊ฒ ์ง€๋งŒ ์‚ฌ์šฉํ•˜๋Š” ํ„ฐ๋ฏธ๋„ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ๋งŽ์ด ํƒˆ ์ˆ˜ ์žˆ๋‹ค. ์‚ฌ์‹ค ํ„ฐ๋ฏธ๋„ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋„ ๊ต‰์žฅํžˆ ๋งŽ์œผ๋ฉฐ ์ด๋“ค์ด ์ง€์›ํ•˜๋Š” ๊ฒƒ๋„ ์ œ๊ฐ๊ฐ์ด๋‹ค. xterm(-color256)์ด ์‚ฌ์‹ค ์ƒ ํ‘œ์ค€์ด๊ธด ํ•œ๋ฐ ์ƒ‰์ƒ์„ ์ง€์›ํ•˜์ง€ ์•Š๋Š” ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ์“ฐ๊ฒŒ ๋˜๋ฉด ์ตœ์‹ ์˜ TUI ํ™˜๊ฒฝ์ด ๋ณด์—ฌ์ฃผ๋Š” ๊ฐ•์ ๋“ค ์ƒ๋‹น์ˆ˜๊ฐ€ ํฌ์„๋  ๊ฒƒ์ด๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ์ƒ‰์ƒ์„ ์ง€์›ํ•˜๋Š” ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋“ค๋„ ์ƒ‰์ƒ ์…‹(set)์ด ์ œ๊ฐ๊ฐ์ธ ๊ฒƒ์ด ๋‚˜๋ฆ„ ๋ฌธ์ œ์ผ ์ˆ˜๋„ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด iTerm2์—์„œ ์ด์˜๊ฒŒ ์„ค์ •ํ•œ ์ƒ‰์ƒ ์„ค์ •์„ ๋‹ค๋ฅธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์—์„œ ๋Œ๋ฆฌ๋ฉด ๋”๋Ÿฌ์šด(...) ์ƒ‰์ƒ์œผ๋กœ ํ‘œํ˜„๋  ์ˆ˜๋„ ์žˆ๋‹ค.

๋ ˆ์ด์•„์›ƒ์˜ ํ‘œํ˜„์— ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ž๋ฅผ ์ด์šฉํ•˜๊ธฐ๋„ ํ•˜์ง€๋งŒ, Extended ASCII์— ์ด๋ฏธ ๋ ˆ์ด์•„์›ƒ์˜ ํ‘œํ˜„์„ ์œ„ํ•œ ๋ธ”๋ก, ์„  ๋“ฑ์ด ์ค€๋น„๋˜์–ด ์žˆ๋‹ค. ASCII Table ์š”์ฆ˜์—๋Š” ์œ ๋‹ˆ์ฝ”๋“œ๋ฅผ ์ด์šฉํ•˜๊ธด ํ•˜์ง€๋งŒ ๋Œ€์‹ ์— ์•„์˜ˆ ํ„ฐ๋ฏธ๋„ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํฐํŠธ ์ž์ฒด๋ฅผ ๋ฐ”๊ฟ”์„œ ๋ ˆ์ด์•„์›ƒ์— ํ•„์š”ํ•œ ๋ฌธ์ž๋“ค์„ ๋งˆ๋ จํ•  ์ˆ˜ ์žˆ๋‹ค. Powerline font๋ฅผ zsh๊ณผ[7] vim, tmux์—์„œ ์“ฐ๋Š” ๊ฒƒ์ด ๋Œ€ํ‘œ์ ์œผ๋กœ, ์ ์ ˆํ•œ ์ƒ‰์ƒ ์„ธํŒ…๊ณผ ๋”๋ถˆ์–ด ์ƒ๋‹นํžˆ ๋ฏธ๋ คํ•œ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ด ์ค€๋‹ค.


์œ ๋‹ˆ์ฝ”๋“œ ์ด์ „์—๋Š” ์˜๋ฌธ ์ด์™ธ์˜ ์–ธ์–ด์…‹์—์„œ๋Š” ๊นจ์ ธ ๋‚˜์˜ค๋Š” ์ผ์ด ๋งŽ์•˜๋‹ค. ๋‹ค๋ฅธ ์–ธ์–ด์…‹์—์„œ๋Š” ์ž๊ตญ์–ด ํ‘œํ˜„์„ ์œ„ํ•ด ์ด ์˜์—ญ์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ. ๋‹น์žฅ 1990๋…„๋Œ€์— ํ•œ๊ธ€ DOS์—์„œ Mdir์„ ๊ตฌ๋™์‹œํ‚ค๋ฉด ์„ ์ด ๋ชจ๋‘ ์ด์ƒํ•œ ๋ฌธ์ž์ณ์ปด์ปด์ปด์ปด์ปด์ปด์บ‘๋กœ ๊นจ์ ธ ๋‚˜์™”๋Š”๋ฐ, ์™„์„ฑํ˜• ์ฝ”๋“œ๊ฐ€ ์•„์Šคํ‚ค ์ฝ”๋“œ์˜ ์ด ์˜์—ญ์„ ์‚ฌ์šฉํ•˜์—ฌ 2๋ฐ”์ดํŠธ๋กœ ํ™•์žฅํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋Š” ๊ตฌ์กฐ์˜€๊ธฐ ๋•Œ๋ฌธ์— ์ถฉ๋Œ์ด ์ผ์–ด๋‚˜๋Š” ๊ฒƒ์ด๋‹ค. ์œ ๋‹ˆ์ฝ”๋“œ๊ฐ€ ์ผ๋ฐ˜ํ™”๋œ ์ง€๊ธˆ์€ ์•„์˜ˆ ๋‹ค๋ฅธ ์˜์—ญ์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋Ÿฐ ์ผ์€ ๊ฑฐ์˜ ์—†๋‹ค.

2. CLI์™€๋Š” ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅธ๊ฐ€?[ํŽธ์ง‘]

2.1. ๋ฒ„ํผ์˜ ์ฐจ์ด[ํŽธ์ง‘]

CLI์—์„œ๋Š” ์ค„ ๋˜๋Š” ๋ฌธ์ž์—ด์„ ํ•œ ๋ฒ„ํผ์˜ ๋‹จ์œ„๋กœ ์ด์šฉํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ํ™”๋ฉด์ƒ์— ํ‘œ์‹œํ•  ๋•Œ ์ค„ ๋˜๋Š” ๋ฌธ์ž์—ด์˜ ์ถ”๊ฐ€๊ฐ€ ๋งค์šฐ ํšจ์œจ์ ์ด๋‹ค. ๋ฐ˜๋ฉด TUI์—์„œ๋Š” ํ™”๋ฉด ์ „์ฒด๋ฅผ ํ•œ ๋ฒ„ํผ์˜ ๋‹จ์œ„๋กœ ์ด์šฉํ•œ๋‹ค. ๋ฒ„ํผ์˜ ์šฉ๋Ÿ‰์ด ๋งค์šฐ ํฐ ๋Œ€์‹  ๋ฒ„ํผ์˜ ์ขŒํ‘œ์™€ ํ™”๋ฉด์˜ ์‹ค์ œ ์ขŒํ‘œ๋ฅผ 1๋Œ€ 1๋กœ ๋Œ€์‘์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. ์‚ฌ์šฉ์ž ์ธก๋ฉด์—์„œ ๊ฐ€์žฅ ํฐ ์ฐจ์ด์ ์€ ์ƒํ•˜์ขŒ์šฐ ๋ฐฉํ–ฅํ‚ค๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด๋‹ค.

2.2. ๋ฌธ์ž์˜ ์ฐจ์ด[ํŽธ์ง‘]

CLI์—์„œ๋Š” ๋ฌธ์ž๋ฅผ ์˜ค๋กœ์ง€ ์˜๋ฏธ์˜ ํ‘œํ˜„์—๋งŒ ์ด์šฉํ•œ๋‹ค. ์ฆ‰, ํ™”๋ฉด์˜ ๋ชจ๋“  ๋ฌธ์ž๋Š” ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

๋Œ€ํ‘œ์ ์ธ CLI ํ”„๋กœ๊ทธ๋žจ
  • ์…ธ ์Šคํฌ๋ฆฝํŠธ. ๋‹ค๋งŒ, ๋Œ€๋ถ€๋ถ„์˜ ์…ธ์—์„œ TUI ์Šคํฌ๋ฆฝํŒ… ๋˜ํ•œ ์ง€์›ํ•œ๋‹ค.
  • ed (ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ)

๋ฐ˜๋ฉด, TUI๋Š” ๋ฌธ์ž๋ฅผ ๋‚ด์šฉ์œผ๋กœ์„œ์˜ ์˜๋ฏธ ๋ฟ ์•„๋‹ˆ๋ผ ํ™”๋ฉด ์œ„ ๋ ˆ์ด์•„์›ƒ์˜ ํ‘œํ˜„์—๋„ ์ด์šฉํ•œ๋‹ค. ์ฆ‰, ๋ฌธ์ž๋ฅผ ์ด์šฉํ•œ ๊ทธ๋ž˜ํ”ฝ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ผ๊ณ ๋„ ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋Œ€ํ‘œ์ ์ธ TUI ํ”„๋กœ๊ทธ๋žจ
  • w3m (์›น ๋ธŒ๋ผ์šฐ์ €)

3. ๊ด€๋ จ ํ•ญ๋ชฉ[ํŽธ์ง‘]

[1] ์ด๊ฒŒ ํ˜„๋Œ€์—๋„ ์€๊ทผํžˆ ์ค‘์š”ํ•œ ๊ฒŒ, ํŠนํžˆ ๋‹ค์ˆ˜์˜ ์‚ฌ์šฉ์ž๊ฐ€ ๋‹จ์ผ ๋…ธ๋“œ(node)์— ์ ‘์†ํ•˜์—ฌ ์ž‘์—…ํ•˜๋Š” ์ƒํ™ฉ์—์„  ์ด๋Ÿฌํ•œ ๊ฐ€๋ฒผ์›€์ด ์ค‘์š”ํ•ด์งˆ ๊ฒƒ์ด๋‹ค. 100๋ช…์ด ๋™์‹œ ์ ‘์†ํ•ด์„œ ์ž‘์—…์„ ํ•˜๋Š”๋ฐ, ๋ชจ๋‘ vim์„ ์“ฐ๋Š” ์ƒํ™ฉ๊ณผ ๋ชจ๋‘ VS code๋ฅผ ์“ฐ๋Š” ์ƒํ™ฉ์„ (๊ทธ๊ฒƒ๋„ ๊ทธ๋ž˜ํ”ฝ ์ธํ„ฐํŽ˜์ด์Šค์˜ ๋ Œ๋”๋ง๊นŒ์ง€ ์ฃ„๋‹ค ์„œ๋ฒ„๊ฐ€ ๋„๋งก๋Š” ์ƒํ™ฉ์„) ์ƒ๊ฐํ•ด ๋ณด์ž. (๋‹ค๋งŒ ์ด๊ฑด ๋„ˆ๋ฌด ๊ทน๋‹จ์ ์ธ ๋น„๊ต์ด๋‹ค. ์•„๋ž˜ ์ฃผ์„์—์„œ FTP๋ฅผ ํ™œ์šฉํ•œ ์˜ˆ๋กœ ๋“ค์—ˆ๋“ฏ์ด GUI๋ฅผ ํ™œ์šฉํ•˜๋Š” ๊ฐœ๋ฐœ์„ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋‹ค.) ์—ฐ๊ตฌ ํ™˜๊ฒฝ์ด๋ผ๋“ ๊ฐ€ ์„œ๋ฒ„ ํ˜ธ์ŠคํŒ… ๊ฐ™์€ ๊ณณ์—์„œ ๋งŽ์ด ์ผ์–ด๋‚˜๋Š” ์ƒํ™ฉ์ด๋‹ค.
[2] ๋ฐ˜๋Œ€์˜ ์˜ˆ๋ฅผ ๋“ค์–ด ์œˆ๋„์šฐ์ฆˆ ์›๊ฒฉ ์ ‘์†์„ ํ•œ ๊ฒฝ์šฐ๋ฅผ ์ƒ๊ฐํ•ด ๋ณด์ž. ์•„๋ฌด๋ฆฌ ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ์ด ์ข‹์•„๋„ ๋ฒ„๋ฒ…๊ฑฐ๋ฆฐ๋‹ค๋Š” ๋А๋‚Œ์ด ๋“ ๋‹ค.
[3] ๋‹ค๋งŒ vim/Emacs, tmux์™€ ๊ฐ™์€ ํ‚ฌ๋Ÿฌ(?) ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค์ด ์ด๋Ÿฐ ๊ฑธ ์—„์ฒญ ์ž˜ ํ•ด๋‚ด์„œ ๊ทธ๋Ÿฐ ๊ฑฐ์ง€ TUI ์ž์ฒด์˜ ๊ฐ•์ ์ด๋ผ๊ณ  ๋ณด๊ธด ๋‹ค์†Œ ์–ด๋ ต๋‹ค.
[4] iTerm2 ๊ฐ™์€ ์ผ๋ถ€ ํ„ฐ๋ฏธ๋„์—์„œ๋Š” ๊ทธ๋ฆผ์„ ์ถœ๋ ฅํ•ด ์ฃผ๊ธฐ๋„ ํ•˜์ง€๋งŒ ์ด๊ฑด TUI์˜ ๋ฒ”์ฃผ ๋ฐ”๊นฅ์ด๊ณ  ํ„ฐ๋ฏธ๋„ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ์ž์ฒด์˜ ๋…์ž์ ์ธ ๊ธฐ๋Šฅ์ผ ๋ฟ์ด๋‹ค.
[5] ImageMagick ๊ฐ™์€ ๊ฑธ๋กœ ๊ฐ„๋‹จํ•˜๊ณ ๋„ ์ผ๊ด„์ ์ธ ์ด๋ฏธ์ง€ ์กฐ์ž‘ ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ๊ธด ํ•˜๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ด๊ฑด CLI ์•„๋‹Œ๊ฐ€ ๊ทธ๋ž˜ ๋ดค์ž ์ œํ•œ์ ์ธ ๊ฑด ๋ถ„๋ช…ํ•˜๊ณ  ๋ฌด์—‡๋ณด๋‹ค ๊ฒฐ๊ณผ๋ฌผ์€ ๋‹น์—ฐํžˆ GUI์—์„œ ๋ด์•ผ๊ฒ ์ง€๋งŒ.
[6] ๋‹ค๋งŒ GUI๋Š” ์ง€์†์ ์œผ๋กœ TUI๊ฐ€ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋“ค์„ ๋งŽ์ด ๊ฐ€์ ธ์˜ค๊ณ  ์žˆ๋Š” ์ค‘์ด๋‹ค. ์‚ฌ์‹ค ํ„ฐ๋ฏธ๋„์—์„œ ์›๊ฒฉ์ ‘์†์œผ๋กœ ์ฝ”๋”ฉํ•˜๋Š” ๊ฒƒ ๋ง๊ณ ๋„ ๋กœ์ปฌ์—์„œ ์ ๋‹นํ•œ GUI ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๋ฅผ ํ†ตํ•ด ์ฝ”๋”ฉ ์ž‘์—…์„ ํ•œ ๋‹ค์Œ ์ด๊ฑธ FTP๋กœ ๋ณด๋‚ผ ์ˆ˜๋„ ์žˆ๋‹ค. vim/Emacs๊ฐ€ ์›Œ๋‚™ ๊ฐ•๋ ฅํ•ด์„œ ์ด๋“ค์ด ์—ฌ์ „ํžˆ ๋„๋ฆฌ ์“ฐ์ด๊ณ  ์žˆ๊ธด ํ•˜์ง€๋งŒ.
[7] ๋‹จ, powerline font๋ฅผ ์ „ํ˜€ ์•ˆ ์“ด ํ…Œ๋งˆ๋“ค๋„ ๋งŽ๋‹ค.