๐Ÿ› /Dev Tool

[VSCode] VSCode์—์„œ ํ„ฐ๋ฏธ๋„ ์—ฌ๋Ÿฌ ๊ฐœ ์‚ฌ์šฉํ•˜๊ธฐ/๋””ํดํŠธ ํ„ฐ๋ฏธ๋„ ์„ค์ •ํ•˜๊ธฐ

ํ•œ๋‚˜ 2020. 11. 14. 19:46

 

์‚ฝ์งˆ ๋ช‡ ๋ฒˆ ๋์— ๋“œ๋””์–ด ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค ์ฝ”๋“œ ๋‚ด์—์„œ external ๋ฐฉ์‹์ด ์•„๋‹Œ integrated ๋ฐฉ์‹์˜ ๋‹ค์ค‘ ํ„ฐ๋ฏธ๋„ ์‚ฌ์šฉ ์„ธํŒ…์„ ์™„๋ฃŒํ–ˆ๋‹ค. ๋๋‚ด๊ณ  ๋‚˜๋‹ˆ ๋ณ„ ์–ด๋ ค์šด ๊ฒŒ ์•„๋‹ˆ์—ˆ๋Š”๋ฐ, argument ์„ค์ •์—์„œ ๊ธธ์„ ์žƒ์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค.

 

์šฐ์„  ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค ์ฝ”๋“œ ์ž์ฒด์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” ๋‹ค์ค‘ ํ„ฐ๋ฏธ๋„ ์‚ฌ์šฉ์ด ์–ด๋ ต๋‹ค๊ณ ๋“ค ํ•ด์„œ Shell Launcher๋ผ๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ๋ฐ›์•„์„œ ํ–ˆ๋‹ค.

 

1. VSCode์—์„œ Shell Launcher ๋‹ค์šด๋กœ๋“œ

 

VSCode๋ฅผ ์—ด๊ณ  ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค -> Shell Launcher๋ฅผ ๊ฒ€์ƒ‰ํ•ด ๊ฐ€์žฅ ๋จผ์ € ๋‚˜์˜ค๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ๋ฐ›์•„์ค€๋‹ค.

 

2. Shell Launcher๋ฅผ ์—ด๊ธฐ ์œ„ํ•œ keyboard shortcut ์ง€์ •ํ•˜๊ธฐ

ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ๋ฐ›์•„์ง€๋ฉด, Details์— ์œ„์™€ ๊ฐ™์ด ํ‚ค๋ณด๋“œ ์ˆ์ปท ์„ค์ •์„ ์œ„ํ•œ ์•ˆ๋‚ด๋ฅผ ๋จผ์ € ํ•ด์ค€๋‹ค. Ctrl+Shift+t๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ๋งŽ์ด๋“ค ํ•˜๋Š”๋ฐ, ๊ฐ์ž ํŽธํ•œ ๊ฑธ๋กœ ์„ค์ •ํ•ด๋„ ๋œ๋‹ค. ๋‚˜๋Š” Shift+Alt+D๋กœ ํ•ด๋‘์—ˆ๋‹ค.

 

Preferences -> Keyboard Shortcuts ์œผ๋กœ ์ ‘๊ทผํ•˜๋ฉด ๋‹ค์–‘ํ•˜๊ฒŒ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋Š” ํ‚ค ๋ฐ”์ธ๋”ฉ ๋ชฉ๋ก์ด ์ฃผ์šฑ ๋‚˜์˜ค๋Š”๋ฐ, ์šฐ๋ฆฌ๋Š” shell launcher๋ฅผ ๊ฒ€์ƒ‰ํ•ด์„œ ๋น ๋ฅด๊ฒŒ ๋ฐ”๊ฟ”๋ณด๋„๋ก ํ•˜์ž.

 

์•„๋งˆ default ๊ฐ’์€ ์œ„ ํ”Œ๋Ÿฌ๊ทธ์ธ์˜ ์ƒ์„ธ ์„ค๋ช…๊ณผ ๋™์ผํ•˜๊ฒŒ Ctrl+Shift+t๋กœ ๋˜์–ด ์žˆ์„ ๊ฒƒ์ด๋‹ค.

 

์ž…๋ ฅํ•˜๊ณ  ์‹ถ์€ ๋‹จ์ถ•ํ‚ค๋ฅผ ์ƒ์„ฑํ•œ ๋‹ค์Œ,Preferences -> Setting ์œผ๋กœ ์ด๋™, 'terminal'์— ๋“ค์–ด๊ฐ„๋‹ค.

์ญ‰์ญ‰ ๋‚ด๋ฆฌ๋‹ค๋ณด๋ฉด edit in settings.json ์ด๋ผ๋Š” ๋ฌธ๊ตฌ๊ฐ€ ๋ณด์ด๋Š”๋ฐ, ์•„๋ฌด๊ฑฐ๋‚˜ ํด๋ฆญ์„ ํ•˜๊ณ , setting.json ํŒŒ์ผ์„ ์—ฐ๋‹ค.

 

3. setting.json์—์„œ terminal ๊ด€๋ จ ํ™˜๊ฒฝ ์„ค์ • ๋„ฃ์–ด์ฃผ๊ธฐ

์•„๋ž˜๋กœ ์ญ‰์ญ‰ ๋‚ด๋ ค์˜ค๋ฉด terminal.integrated.shell.windows์ด ๋ณด์ผํ…๋ฐ, ์—ฌ๊ธฐ๋Š” ๊ธฐ๋ณธ์œผ๋กœ ๋‚˜์˜ค๋Š” shell์˜ ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•ด์ฃผ๋Š” ๊ณณ์ด๊ณ , ์šฐ๋ฆฌ๋Š” ์ด์ œ shell launcher์— ๋„ฃ๊ณ ์ž ํ•˜๋Š” ๊ฐ์ข… ํ„ฐ๋ฏธ๋„ ์ฃผ์†Œ๋ฅผ ๋„ฃ์–ด์ค„ ๊ฒƒ์ด๋‹ค.

 

๋‚˜๋Š” CMD, git-bash, node prompt๋ฅผ ๊ฐ€์žฅ ์ž์ฃผ ์จ์„œ ์ด๋ ‡๊ฒŒ ์„ธ ๊ฐœ๋ฅผ ๋„ฃ์–ด์คฌ๋‹ค. ์ด๊ฒŒ ๋‚˜์ค‘์—๋Š” ์•„๋ž˜์ฒ˜๋Ÿผ ๋ชฉ๋ก์œผ๋กœ ๋œฌ๋‹ค.

 

 // shell Launcher
    "shellLauncher.shells.windows": [
        {
            "shell" : "C:\\WINDOWS\\sysnative\\cmd.exe",
            "label" : "cmd"
        },
        {
            "shell" : "C:\\Users\\user\\Downloads\\Git Software\\Git\\bin\\bash.exe",
            "label": "git-bash"
        },
        {
            "shell" : "C:\\Windows\\System32\\cmd.exe",
            "args" : [ "/k", "C:\\Users\\user\\Downloads\\Node.js\\nodevars.bat" ],
            "label" : "Node Prompt"
        }
        // powershell
    ],

๊ฐ์ž์˜ ๊ฒฝ๋กœ๊ฐ€ ๋‹ค ๋‹ค๋ฅด๊ฒŒ ์ง€์ •๋˜์–ด ์žˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์•„์„œ ์œ„ ์ฝ”๋“œ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณต์‚ฌํ•˜๋ฉด ์•„๋งˆ ์‹คํ–‰์ด ์•ˆ ๋  ๊ฒƒ์ด๋‹ค. ๋˜ ์–ด๋–ค ๊ฒฝ๋กœ๋ฅผ ์‚ฌ์šฉํ•˜๋Š๋ƒ์— ๋”ฐ๋ผ integrated terminal์ด ์•„๋‹ˆ๋ผ external๋กœ ์—ด๋ฆฌ๊ธฐ๋„ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ git bash ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” Git->bin->bash.exe๋กœ ํ•ด์คฌ๋‹ค. (์ฐธ๊ณ  : Git bash shell was opened in a standalone window instead of integrated on Windows)

๋ฌผ๋ก  ์šฐ๋ฆฌ๋Š” array ๋ฐฉ์‹์ด ์•„๋‹ˆ๋ผ key, value ํ˜•ํƒœ๋กœ๋งŒ ์ œ๊ณต๋˜๋Š” terminal.integrated.shell.windows๊ฐ€ ์•„๋‹ˆ๋ผ ๋Ÿฐ์ฒ˜๋ฅผ ์“ธ ๊ฒƒ์ด๋ฏ€๋กœ ์ด ์ฃผ์†Œ๋ฅผ ์ฝ”๋“œ๋ธ”๋Ÿญ์—์„œ์ฒ˜๋Ÿผ "shell"์˜ ๊ฐ’์œผ๋กœ ๋„ฃ์–ด์ค€๋‹ค.

Node.js prompt ์˜ ๊ฒฝ์šฐ๊ฐ€ ์กฐ๊ธˆ ๋‹ฌ๋ž๋Š”๋ฐ ์œ„ ๋Œ€์ƒ์— /k "C:\Users\..."๋กœ ์‹œ์ž‘ํ•˜๋Š” argument ๋•Œ๋ฌธ์— args ์˜ต์…˜์„ "shell"๊ณผ "label"์ฒ˜๋Ÿผ ๋„ฃ์–ด์ฃผ์–ด์•ผ ํ–ˆ๋‹ค.

 

์ด์ œ ์›ํ•˜๋Š” ํ„ฐ๋ฏธ๋„์„ ๋‹ค ๋„ฃ๊ณ , ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ๋ฆฌ์Šคํƒ€ํŠธํ•ด์ฃผ๋ฉด ์•„๊นŒ ์„ค์ •ํ•œ ํ‚ค๋ณด๋“œ ์ˆ์ปท์œผ๋กœ ์ ‘๊ทผํ•ด ๋‹ค์ค‘ ํ„ฐ๋ฏธ๋„์„ ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 


VSCode์—์„œ Node Prompt๋ฅผ ๊ธฐ๋ณธ Terminal๋กœ ์„ค์ •ํ•ด์ฃผ๊ธฐ

(2021-01-10 ์—…๋ฐ์ดํŠธ)

 

 

settings.json์œผ๋กœ ๋“ค์–ด๊ฐ€์„œ,

"terminal.integrated.shellArgs.windows": ["/k C:\\Users\\user\\Downloads\\Node.js\\nodevars.bat"],
"terminal.integrated.shell.windows": "C:\\WINDOWS\\System32\\cmd.exe",

์ฒซ ๋ฒˆ์งธ ์ค„ ์ฝ”๋“œ์ฒ˜๋Ÿผ argument๋ฅผ ๋“ฑ๋กํ•ด์ฃผ๊ณ , ๋‘ ๋ฒˆ์งธ ์ค„์ฒ˜๋Ÿผ ๊ธฐ๋ณธ shell์„ ๋“ฑ๋กํ•ด์ฃผ๋ฉด ๋!