๋์ ๋ฌธ์๋ณ๋ก ์ญ์ ํฉ๋๋ค.
ํฐ๋ฏธ๋ ์ฑ์ ํค ๋ฐ์ธ๋ฉ์ด ๋ณด์ด์ง ์์ ๊ตฌํ๋์ง ์์์ ์ ์์ต๋๋ค.
@kapperchino ๋ ์ค์ํ ๊ฒ์ Ctrl + Backspace๊ฐ ์ง๋ ฌํ๋์ด ๋ค๋ฅธ ์ชฝ ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก ์ ์ก๋์ด์ผํ๋ VT ์ํ์ค๋ผ๋ ๊ฒ์ ๋๋ค. ๋ฆฌ ๋ฐ์ธ๋ฉ ํ ์ ์๊ฑฐ๋ ํค ๋ฐ์ธ๋ฉ์ผ๋ก ์ทจ๊ธ๋์ง ์์ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค.
์ฌ๋ฐ๋ฅธ ์ํ์ค๊ฐ โโํฐ๋ฏธ๋์ ์ ๊ฒฝ ํ๋ก๊ทธ๋จ์ผ๋ก ์ ์ก๋๋์ง ํ์ธํ๊ณ ์ถ์ต๋๊น? ๋จ์ด ์ญ์ ์์ ์ ํฐ๋ฏธ๋์ด ์๋๋ผ ์ ์ ์ํด ์ฒ๋ฆฌ๋ฉ๋๋ค. ํฐ๋ฏธ๋์๋ ๋จ์ด ๊ฐ๋ ์ด์๊ณ ์ ๋ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
์.
๋ณด๋ธ ์ฌ๋ : Mike Frysinger [email protected]
๋ณด๋ธ ๋ ์ง : 2019 ๋
5 ์ 14 ์ผ ํ์์ผ ์คํ 2:19:01
๋ฐ๋ ์ฌ๋ : microsoft / Terminal
์ฐธ์กฐ : Dustin Howett; ์ ์
์ ๋ชฉ : Re : [microsoft / Terminal] Ctrl- ๋ฐฑ ์คํ์ด์ค๋ก ์ด์ ๋จ์ด ๋ถ๋ฆฌ๋ก ๋ค์ ์ญ์ ๋์ง ์์ (# 755)
์ฌ๋ฐ๋ฅธ ์ํ์ค๊ฐ โโํฐ๋ฏธ๋์ ์ ๊ฒฝ ํ๋ก๊ทธ๋จ์ผ๋ก ์ ์ก๋๋์ง ํ์ธํ๊ณ ์ถ์ต๋๊น? ๋จ์ด ์ญ์ ์์ ์ ํฐ๋ฏธ๋์ด ์๋๋ผ ์ ์ ์ํด ์ฒ๋ฆฌ๋ฉ๋๋ค. ํฐ๋ฏธ๋์๋ ๋จ์ด ๊ฐ๋ ์ด์๊ณ ์ ๋ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
โ
์ค๋ ๋๋ฅผ ์์ฑํ๊ธฐ ๋๋ฌธ์ ์์ ํ ๊ฒ์
๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ํ์ ํ๊ณ GitHub https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2FTerminal%2Fissues%2F755%3Femail_source%3Dnotifications%26email_token % 3DADNHLGSJTE4KKXWHDECROFDPVMUELA5CNFSM4HMTV4DKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODVM2FPI % 23issuecomment-492,413,629 ๋ฐ ๋ฐ์ดํฐ = 01ํผ์ผํธ 7C01 % 7Cduhowett % 40microsoft.com % 7C1997e6ff518e4a3f396708d6d8b1c987 % 7C72f988bf86f141af91ab2d7cd011db47 % 7C1 ๋ฐ SDATA = V1y3C26WGNZ50VnZW5BhV1CYKetf % 2BgGLqov9Sc9tLw0 % 3D ๋ฐ = 0๋ฅผ ์์ ํ๊ฑฐ๋ ์ค๋ ๋ ์๊ฑฐ https://nam06.safelinks.protection.outlook.com/๋ฅผ? URL = HTTPS % 3A % 2F % 2Fgithub.com % 2Fnotifications % 2Funsubscribe-์ธ์ฆ % 2FADNHLGQKRNJQTZBZCRAZMO3PVMUELANCNFSM4HMTV4DA ๋ฐ ๋ฐ์ดํฐ = 01ํผ์ผํธ 7C01 % 7Cduhowett % 40microsoft.com % 7C1997e6ff518e4a3f396708d6d8b1c987 % 7C72f988bf86f141af91ab2d7cd011db47 % 7C1 ๋ฐ SDATA = auF20gJCIvXV % 2FYpDN0e % 2B3JzvxI766ZTbszhk3qx % 2BwUo % 3D & = 0 ์์ฝ .
์ฐธ๊ณ ๋ก WSL์ ํตํด PowerShell์ ์์ํ๋ฉด ctrl + backspace
๋ ๋ฌธ์ ๋จ์๋ก ์ญ์ ๋๋ฏ๋ก ํฐ๋ฏธ๋ ๋ฌธ์ ๊ฐ ์๋ ์ ์์ต๋๋ค.
๋ถ๋ช
ํ Ctrl + backspace == <U+0008> == ^H
PowerShell์ ํฌํจํ ๋๋ถ๋ถ์ ์
ธ์ ํ๋์ ๋ฌธ์๋ฅผ ์ญ์ ํ๋ ๊ฒ์ผ๋ก ์ฒ๋ฆฌ๋์์ผ๋ฏ๋ก ์ด๊ฒ์ ์ผ์ข
์ ์ค๊ณ ์์
๋๊น? ๋ํ ์ด๊ฒ์ด ์๋ง๋ ๋๋ถ๋ถ์ Linux ์์ด ๋์ Alt + backspace
๋ฅผ ์ฌ์ฉํ๋ ์ด์ ์ผ ๊ฒ์
๋๋ค.
๋ค ์ด๊ฒ์ PSReadline์ TBH ์ผ ์ ์์ต๋๋ค. ๋๋ ๊ทธ๋ค์ด ctrl + backspace๋ก INPUT_RECORD
์ ์ฐพ๊ณ ์๋ค๊ณ ํ์ ํ์ง๋ง @ Summon528์ด ์ธ๊ธํ๋ฏ์ด ์ฐ๋ฆฌ๋ ๋๋ถ๋ถ์ ํฐ๋ฏธ๋ ์๋ฎฌ๋ ์ดํฐ๊ฐ ctrl + backspace๋ฅผ ์ํด ๋ณด๋ผ ^H
๋ฅผ ๋ณด๋
๋๋ค.
๊ทธ๋ฐ ๋ค์ conpty๊ฐ ^H
๋ฐ์ผ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๋ณํ๋ฉ๋๋ค.
๋ฐ๋๋ก
์ด๊ฒ์ ์ ์ฒด conpty INPUT_RECORD๋ก ํด๊ฒฐํ ์ ์์ต๋๋ค.
์ผ๋ฐ PowerShell์ ์ด์ ๋จ์ด ๋ถ๋ฆฌ๊น์ง ๋ค์ ์ญ์ ํ๋ฏ๋ก Windows ํฐ๋ฏธ๋์ PowerShell ํญ๋ ๋๊ฐ์ด ํ ๊ฒ์ผ๋ก ์์ํฉ๋๋ค.
"๋๋ ๊ธฐ๋ํ๋ค"
์ข์ต๋๋ค. ์ด๊ฒ์ด ์์ง ์ด๋ ค ์๊ณ ์ค๊ณ ์์ผ๋ก ํด๊ฒฐ๋์ง ์์ ๋ฒ๊ทธ ์ธ ์ด์ ์ ๋๋ค.
@lzybkr @ daxian-dbw ์ด๊ฒ์ ๋ํ ์ด๋ค ์๊ฐ? Windows Terminal์์ PS Core๊ฐ ์คํ๋ ๋ ctrl+backspace
์ด ์๋ํ์ง ์๋๋ค๋ ๊ฒ์ ์์ฌ์ด ์ผ์
๋๋ค. FWIW ์ด๊ฒ์ cmd.exe์์๋ ๋ฌธ์ ๊ฐ๋ฉ๋๋ค.
ํด๊ฒฐ์ฑ ์ ์์ง๋ง Windows์์ PSReadLine์ CLR์ ์ฌ์ฉํ์ฌ Windows๊ฐ ์๋ ํฐ๋ฏธ๋์์ ์ผ๋ฐ์ ์ผ๋ก ์ป๋ ๊ฒ๋ณด๋ค ๋ ์ ํํ๊ฒ INPUT_RECORD๋ฅผ ๋งคํํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๊ด๋ จ ํ๋ซํผ ๋ณ ๊ฐ์ ๋ ์์ต๋๋ค.
FWIW, Ctrl + Shift + ์ผ์ชฝ (์ด์ ๋จ์ด ์ ํ)์ ๋๋ฅธ ๋ค์ ๋ฐฑ ์คํ์ด์ค ํค๋ฅผ ๋๋ฌ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค. ์ด์์ ์ด์ง๋ ์์ง๋ง ๊ฐ๋ณ ๋ฌธ์๋ฅผ ํตํด ๋ฐฑ ์คํ์ด์คํ๋ ๊ฒ๋ณด๋ค ๋ ํจ์จ์ ์ ๋๋ค.
์ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ ๋์์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค! ์ผ๋ฐ PowerShell ์ฌ์ฉ์ผ๋ก ์ธํ ๋ช ๋ฐฑํ ๋ณ๊ฒฝ ์ฌํญ์ ๋๋ค.
๋ถ๋ช ํ ๋งํ์๋ฉด ์ด๊ฒ์ powershell ํญ์ ๋ฌธ์ ๊ฐ ์๋๋๋ค. ๋๋ ์๋ cmd.exe ํญ์์ ์๋ํ์ง ์๋๋ค๊ณ ๋ณด๊ณ ํ๊ธฐ ์ํด ์ฌ๊ธฐ์ ์์ต๋๋ค.
๋ํ Ctrl + Shift + ์ผ์ชฝ ํด๊ฒฐ ๋ฐฉ๋ฒ์ cmd.exe ํญ์์ ์๋ํ์ง ์์ต๋๋ค. "foo"๋ฅผ ์ ๋ ฅ ํ ๋ค์ CTRL + SHIFT_LEFT๋ฅผ ์ ๋ ฅํ๋ฉด ์ปค์๊ฐ "foo"์ ์์ ๋ถ๋ถ์ผ๋ก ์ด๋ํฉ๋๋ค. ๋จ์ด๋ฅผ ์ ํํ์ง ์์ผ๋ฏ๋ก ๋ฐฑ ์คํ์ด์ค๋ฅผ ๋๋ฌ๋ ์ํ๋ ํจ๊ณผ๊ฐ ์์ต๋๋ค.
WSL์์ ๋ด ์
ธ๋ก zsh๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๋ค. bindkey '^H' backward-kill-word
์ฌ์ฉํ ๋ ์์๋๋ ๋์์ ์ป์ต๋๋ค.
์ด๊ฒ์ ๋ด ๊ตฌ์ฑ์ ๋๋ค.
bindkey -e
# Control + backspace
bindkey '^H' backward-kill-word
# Control + arrows
bindkey ";5C" forward-word
bindkey ";5D" backward-word
์ด ๋ฌธ์ ์ ๋ํด Microsoft์ ๊ฑฐ์ ๋ชจ๋ ํ๋ก๊ทธ๋จ๊ณผ ๋๋ถ๋ถ์ ์ธ๋ถ ํ๋ก๊ทธ๋จ์ control + backspace๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ฒด ๋จ์ด๋ฅผ ์ญ์ ํ์ง๋ง ์ด๋ค ์ด์ ๋ก ๋ ๊ธฐ๋ณธ Windows ๊ธฐ๋ฅ์ด ์๋๋๋ค. ์ฆ, ๊ฐ ํ๋ก๊ทธ๋จ์ด ๊ธฐ๋ฅ์ ๋ํ ์ง์์ ์๋์ผ๋ก ์ถ๊ฐํด์ผํ๊ฑฐ๋ ์ปดํ์ผ๋ฌ๊ฐ ์ง์์ ์ถ๊ฐํด์ผํฉ๋๋ค. ์ด๊ฒ์ ํซํค๋ฅผ ์๋ ์ฌ๋๋ค์ด ๋ชจ๋ ๊ณณ์์ ๋ฐ์ํ ๊ฒ์ผ๋ก ์์๋๋ ํ์ค ๊ธฐ๋ฅ์ ๋๋ค. ๋ค์ํ ํฐ๋ฏธ๋์ ์ ๋ฐ์ดํธํ๋ ๊ฒ๋ณด๋ค ๊ธฐ๋ณธ ์ฐฝ ๊ธฐ๋ฅ์ผ๋ก ์ถ๊ฐํ๋ ๊ฒ์ด ๋ ํ๋ช ํ์ง ์์ต๋๊น?
(์ฐธ๊ณ : explorer.exe๋ ์ ์ฒด ๋จ์ด๋ฅผ ์ญ์ ํ๋ ๋์ ๋ฌธ์๋ฅผ ์ญ์ ํ๋ ascii 127๋ ์ฝ์ ํฉ๋๋ค.)
Ctrl + Backspace์ ๋ํ ์ผ๋ถ ๊ธฐ๋ก : https://devblogs.microsoft.com/oldnewthing/?p=24823
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด bash์์ bind '"\C-H":backward-kill-word'
์ ์ฌ์ฉํ์ญ์์ค.
๋ชจ๋ ํ ์คํธ ํธ์ง๊ธฐ / ๋ธ๋ผ์ฐ์ ๊ฐ cmd.exe ๋ฐ powershell.exe ๋ฐ ์ต์ Windows ๋น๋์ ๋ฉ๋ชจ์ฅ๊ณผ ํจ๊ป์ด๋ฅผ ์ง์ํ๋ค๋ @ yggdrasil75์ ํ์คํ ๋์ํฉ๋๋ค.
ํนํ powershell์ ์ฌ์ฉํ๊ณ powershell cmdlet / params๊ฐ ๊ธธ์ด์ง ์ ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ์ ์๊ฒ ํฐ ์ฐจ๋จ๊ธฐ์ ๋๋ค. ๊ธฐ๋ณธ ๋ฐฑ ์คํ์ด์ค๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ ์ด์ ๋จ์ด๋ฅผ ์ ํํ ๋ค์ ๋ฐฑ ์คํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ฉด ์ํฌ ํ๋ก๊ฐ ๋๋ฌด ๋ง์ด ๋์ด์ง๋๋ค.
autohotkey๋ฅผ ์ฌ์ฉํ๋ ๋ค๋ฅธ ์ฌ๋์ ์ํด์ด ๊ฐ๋จํ ๋งคํฌ๋ก๋ฅผ ์ฌ์ฉํ๋ฉด ๊ตฌํ ๋ ๋๊น์ง์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค.
#SingleInstance force ; Automatically overwrite any running instance of this script
#Persistent ; If this directive is present anywhere in the script, that script will stay running after the auto-execute section (top part of the script) completes
; For Windows Terminal - deletes the previous word
#IfWinActive ahk_exe WindowsTerminal.exe ; Wait for WindowsTerminal to be active
^backspace::
Send, ^+{Left}
Send, {Delete}
return
์ด์ ๊ฐ์ ๊ฒ์ ํญ์ ์คํํ๋ ๊ฒ์ ์ง์ฆ๋์ง๋ง ํฐ๋ฏธ๋์ ๋ค๋ฅธ ๋ชจ๋ ์ธก๋ฉด์ ์ผ๋ง๋ ์ข์ํ๋์ง์ด ๊ฒฝ๋ก๋ก๋ง ๊ฐ๊ณ ์์ผ๋ฉฐ ์ด๊ฒ์ด ์ด๊ฒ์ด ๋๋ฅผ์ํ ์๋ฒฝํ ํฐ๋ฏธ๋์ ๋ง๋๋ ๋ง์ง๋ง ์ํ์ ๋๋ค.
PSReadLine ์์ :
Set-PSReadLineKeyHandler -Key Ctrl+h -Function BackwardKillWord
๋ชจ๋ ํ ์คํธ ํธ์ง๊ธฐ / ๋ธ๋ผ์ฐ์ ๊ฐ cmd.exe ๋ฐ powershell.exe ๋ฐ ์ต์ Windows ๋น๋์ ๋ฉ๋ชจ์ฅ๊ณผ ํจ๊ป์ด๋ฅผ ์ง์ํ๋ค๋ @ yggdrasil75์ ํ์คํ ๋์ํฉ๋๋ค.
ํนํ powershell์ ์ฌ์ฉํ๊ณ powershell cmdlet / params๊ฐ ๊ธธ์ด์ง ์ ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ์ ์๊ฒ ํฐ ์ฐจ๋จ๊ธฐ์ ๋๋ค. ๊ธฐ๋ณธ ๋ฐฑ ์คํ์ด์ค๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ ์ด์ ๋จ์ด๋ฅผ ์ ํํ ๋ค์ ๋ฐฑ ์คํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ฉด ์ํฌ ํ๋ก๊ฐ ๋๋ฌด ๋ง์ด ๋์ด์ง๋๋ค.
autohotkey๋ฅผ ์ฌ์ฉํ๋ ๋ค๋ฅธ ์ฌ๋์ ์ํด์ด ๊ฐ๋จํ ๋งคํฌ๋ก๋ฅผ ์ฌ์ฉํ๋ฉด ๊ตฌํ ๋ ๋๊น์ง์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค.
#SingleInstance force ; Automatically overwrite any running instance of this script #Persistent ; If this directive is present anywhere in the script, that script will stay running after the auto-execute section (top part of the script) completes ; For Windows Terminal - deletes the previous word #IfWinActive ahk_exe WindowsTerminal.exe ; Wait for WindowsTerminal to be active ^backspace:: Send, ^+{Left} Send, {Delete} return
์ด์ ๊ฐ์ ๊ฒ์ ํญ์ ์คํํ๋ ๊ฒ์ ์ง์ฆ๋์ง๋ง ํฐ๋ฏธ๋์ ๋ค๋ฅธ ๋ชจ๋ ์ธก๋ฉด์ ์ผ๋ง๋ ์ข์ํ๋์ง์ด ๊ฒฝ๋ก๋ก๋ง ๊ฐ๊ณ ์์ผ๋ฉฐ ์ด๊ฒ์ด ์ด๊ฒ์ด ๋๋ฅผ์ํ ์๋ฒฝํ ํฐ๋ฏธ๋์ ๋ง๋๋ ๋ง์ง๋ง ์ํ์ ๋๋ค.
AHK ์คํฌ๋ฆฝํธ์์ ๋ค๋ฅธ ํซํค๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ #IfWinActive
๋ฐ๋ก ๋ค์ ์ปจํ
์คํธ ๋ฏผ๊ฐ๋๋ฅผ ๋์ญ์์ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ๊ทธ ์๋์ ์ ์ ๋ ํซํค๋ ahk_exe WindowsTerminal.exe
๊ฐ ํ์ฑํ ๋ ๊ฒฝ์ฐ์๋ง ์ ์ฉ๋ฉ๋๋ค.
; For Windows Terminal - deletes the previous word
#IfWinActive ahk_exe WindowsTerminal.exe ; only apply to this active window
^backspace::
Send, ^+{Left}
Send, {Delete}
return
#IfWinActive ; turns off context sensitivity
PSReadLine ์์ :
Set-PSReadLineKeyHandler -Key Ctrl+h -Function BackwardKillWord
@paulelms ๋ ๊ฐ์ฌํฉ๋๋ค! ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ PowerShell / Core ์ฐฝ์์ ํ๋ฅญํ๊ฒ ์๋ํฉ๋๋ค! ๋๋จํด! ๐ฅ
์ฐ๋ฆฌ๋ vscode์ ํฐ๋ฏธ๋์ ๋ํด ๋น์ทํ ์์ ์ํด์ผํ์ต๋๋ค.
if ($env:TERM_PROGRAM -eq "vscode") {
Set-PSReadLineKeyHandler -Chord 'Ctrl+w' -Function BackwardKillWord
Set-PSReadLineKeyHandler -Chord 'Alt+D' -Function KillWord
Set-PSReadLineKeyHandler -Chord 'Ctrl+@' -Function MenuComplete
}
Ctrl + Backspace๋ ์ฐ๋ฆฌ์๊ฒ Ctrl + w๋ฅผ์ฃผ์์ต๋๋ค
Ctrl + Spacebar๋ Ctrl + @์์ฃผ์์ต๋๋ค
vscode๊ฐ ์ผ๋ฐ์ ์ธ ์๋๋ฆฌ์ค์ด๊ธฐ ๋๋ฌธ์ ์ค์ ๋ก PSReadLine์ ๊ธฐ๋ณธ ํค ๋ฐ์ธ๋ฉ์ผ๋ก ์ถ๊ฐํ์ต๋๋ค.
์๋ง๋ ๊ทธ๋ค (์ผ๋ช xterm.js)๊ณผ์ ์ผ๋ถ ์ ๋ ฌ์ ๋ชจ๋ ์ฌ๋์๊ฒ ๊ฐ์น๊ฐ ์์ต๋๊น?
์ฐ๋ฆฌ๋ vscode์ ํฐ๋ฏธ๋์ ๋ํด ๋น์ทํ ์์ ์ํด์ผํ์ต๋๋ค.
if ($env:TERM_PROGRAM -eq "vscode") { Set-PSReadLineKeyHandler -Chord 'Ctrl+w' -Function BackwardKillWord Set-PSReadLineKeyHandler -Chord 'Alt+D' -Function KillWord Set-PSReadLineKeyHandler -Chord 'Ctrl+@' -Function MenuComplete }
Ctrl + Backspace๋ ์ฐ๋ฆฌ์๊ฒ Ctrl + w๋ฅผ์ฃผ์์ต๋๋ค
Ctrl + Spacebar๋ Ctrl + @์์ฃผ์์ต๋๋คvscode๊ฐ ์ผ๋ฐ์ ์ธ ์๋๋ฆฌ์ค์ด๊ธฐ ๋๋ฌธ์ ์ค์ ๋ก PSReadLine์ ๊ธฐ๋ณธ ํค ๋ฐ์ธ๋ฉ์ผ๋ก ์ถ๊ฐํ์ต๋๋ค.
์๋ง๋ ๊ทธ๋ค (์ผ๋ช xterm.js)๊ณผ์ ์ผ๋ถ ์ ๋ ฌ์ ๋ชจ๋ ์ฌ๋์๊ฒ ๊ฐ์น๊ฐ ์์ต๋๊น?
# 2256์ WT_SESSION
๋ฅผ ์ฌ์ฉํ์ฌ Windows ํฐ๋ฏธ๋์ ์๋์ง ํ์
ํ ์ ์์ต๋๋ค.
ํฐ๋ฏธ๋์ ์ฌ์ฉํด ๋ณด์์ต๋๋ค. Ctrl + Backspace๊ฐ ์ผ๋ง๋ ํ์ํ์ง ๋ชฐ๋์ต๋๋ค. ๋๋ ์ฝ 2 ์๊ฐ ๋์ ์ง์๋์๊ณ ํฌ๊ธฐํด์ผํ๋ค. ์ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ ๋ ํ ๋ค์ ์๋ํ๊ฒ ์ต๋๋ค.
@billgr ํด๊ฒฐ ๋ฐฉ๋ฒ ์ ์๋ ํ์ต๋๊น?
@TylerLeonhardt ,์ด ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช
ํด ์ฃผ์๊ฒ ์ต๋๊น? ๋๋ PS์ $PROFILE
ํ์ง๋ง ์ด์ด ์์๋ค.
@TylerLeonhardt ,์ด ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํด ์ฃผ์๊ฒ ์ต๋๊น? ๋๋ PS์
$PROFILE
ํ์ง๋ง ์ด์ด ์์๋ค.
psreadline
์ค์นํ๋ค๊ณ ๊ฐ์ ํ๋ฉด์ด ์ค ๋ํซ์ $PROFILE.CurrentUserAllHosts
if ($env:WT_SESSION -ne $null)
{
Set-PSReadLineKeyHandler -Key Ctrl+h -Function BackwardKillWord
}
์ด๊ฒ์ ๋งค์ฐ ๊ฑฐ์น ์๋ฃจ์ ์ด์ง๋ง ๋๋ฅผ ์ํด ์๋ํฉ๋๋ค. :)
@Kralizek , ๊ฐ์ฌํฉ๋๋ค. ์ด๋ค ์ด์ ๋ก "๋์๊ฒ๋ ํจ๊ณผ๊ฐ์๊ณ , ๋น์ ์๊ฒ๋ ํจ๊ณผ๊ฐ ์์ผ๋ฉฐ, ์ด์ ๋์๊ฒ๋ ํจ๊ณผ๊ฐ ์์ต๋๋ค."์๋๋ฆฌ์ค๋ก ์งํ๋์์ต๋๋ค.
๋๋ ์ด๊ฒ์ด ์ง๊ธ ์๋ํ๋ ๊ฒ์ ๊ธฐ์๋ค. ๊ทธ๋ฌ๋ ์ฌ๋ฌ๋ถ์ ์ด๋ฏธ ์ด๊ฒ์ ํ ์คํธํ๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ด WSL์์ ์๋ํ์ง ์๋๋ค๋ ๊ฒ์ ์๊ณ ์๋ค๊ณ ํ์ ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ์ฉ :
stty werase ^H
WSL์์๋ ํธ๋ฆญ์ ์ํํฉ๋๋ค.
@ DHowett-MSFT ๋๋ ์ด๊ฒ์ ๊ตฌํํ๋ ๋ฐ ๊ด์ฌ์ด ์์ผ๋ฉฐ ์๋ง๋ Ctrl + Del์ ์ฌ์ฉํ๊ณ ์์ต๋๋ค. ์์์ ๋ํ ํ์ด ์์ต๋๊น? WT์ VirtualTerminal ๋ถ๋ถ์ ๋๋ฌด ๊น๊ฒ ํ์ง ์์์ต๋๋ค.
@mkitzan ํ์ค! ์ฌ๊ธฐ์๋ณด๊ณ ์ถ์ ๋ถ๋ถ์ด ์์ต๋๋ค.
VirtualTerminalInput
-Cascadia์์ (ํญ์) ์ฌ์ฉํ์ฌ ์ฃผ์ด์ง ํค ๋๋ฅด๊ธฐ์ ๋ํด ์์ฑ ํ VT๋ฅผ ๊ฒฐ์ ํฉ๋๋ค.InputStateMachineEngine
-Conhost (์ฌ๊ธฐ์๋ conpty ํธ์คํ
)์์ VT์ ํน์ ๋ถ๋ถ์ด ๋ณํ๋๋ ์ฃผ์ ์ด๋ฒคํธ๋ฅผ ๊ฒฐ์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.VirtualTerminalInput
-Conhost (์์ฉ ํ๋ก๊ทธ๋จ์ด VT ์
๋ ฅ์ ์์ฒญํ ๊ฒฝ์ฐ)์์ ์ฌ์ฉํ์ฌ ์ฃผ์ด์ง ํฉ์ฑ ํค ๋๋ฅด๊ธฐ์ ๋ํด ์์ฑ ํ VT๋ฅผ ๊ฒฐ์ ํฉ๋๋ค.์ฃผ์ํด์ผ ํ ๊ฒ์ ์ฃผ์ด์ง ๋นํ์ค ๋ฌธ์ ์
๋ ฅ์ ๋ํด VirtualTerminalInput
๊ฐ 0 ~ 2 ๋ฒ ์ฌ์ฉ๋๋ ๋ฐฉ์์
๋๋ค.
์ข์ต๋๋ค. ์กฐ์ฌํ๊ฒ ์ต๋๋ค. ๊ฐ์ฌ.
์
๋ฐ์ดํธ : ESC\0x8
๋ WSL์์ ์ํ๋ ์์
์ ์ํํ์ง๋ง PS ๋๋ CMD์์๋ ์ํํ์ง ์์ต๋๋ค. Ctrl + Del ์ PS์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ์ง๋ง WSL ๋๋ CMD์์๋ ์๋ํ์ง ์์ต๋๋ค. ์์ง ์์
์ค โ.
๋น ๋ฅธ ์์ ์ ์ํ๋ ์ค๋ ๋์ WSL ๊ณ ๊ธ ์ฌ์ฉ์ (๊ฐ๋ฐ ๋น๋ ํฌํจ)์ ๊ฒฝ์ฐ L"\x8"
์ L"\x1b\x8"
. WSL ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๋น๋ ์ฌ์ฉ์์ ๊ฒฝ์ฐ Alt + Ctrl + Backspace ๊ฐ ์์์์ ์ํ๋ ์์
์ ์ํํฉ๋๋ค (ํ์ฌ๋ก์๋ ์ฐจ์ ์ฑ
).
์ฝ๋ ์ถ์ ์ค Conpty ๊ฒฝ๊ณ์ ๋๋ฌ ํ ์ค์ ์์์
๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ๊ตฌํ ํ ๊ฒ์ ๋ํด ์ข์์๋ฅผ ๋๋ฅด๊ณ ์ถ์ต๋๋ค. ๊ทธ๊ฒ์ ๊ฝค ํ์ค์ ์ธ ๋ฐ๋ก ๊ฐ๊ธฐ์ด๋ฉฐ, ๊ทธ ์ดํ๋ก ๋ค๋ฅธ ์๋์ฐ ์ ์๋ฎฌ๋ ์ดํฐ์ ์กด์ฌํ์ต๋๋ค.
PSReadLine ๋ฐ AHK ์๋ฃจ์
์ ๊ด์ฐฎ์ง ๋ง profiles.json ๋ฐ๋ก ๊ฐ๊ธฐ๋ฅผ ํตํด์ด๋ฅผ ๊ตฌํํ ๊ฐ๋ฅ์ฑ์ด ์๋ค๊ณ ์๊ฐํฉ๋๋ค. (์ฆ
"command": "something",
"keys": [
"ctrl+backspace"
]
์ด ์ค์ ์ ์ฃผ๋ก ๊ธฐ์กด ๋ช ๋ น์ ํค ๋งคํํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๊ฒ์ผ๋ก ๋ณด์ด๋ฏ๋ก ๊ทธ๋ ์ง ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค.
profiles.json ๋จ์ถํค๋ฅผ ํตํด
ํต์ฌ์์ ํฐ๋ฏธ๋์ ํ ๊ณณ์์ ๋ค๋ฅธ ๊ณณ์ผ๋ก ํ ์คํธ๋ฅผ ๊ฐ์ ธ ์ค๋ ๋ฐฉ๋ฒ์ ๋๋ค. _terminal_ ์ธก์์ ๊ตฌํํ ์์๋ ๋ช ๋ น์ ์๊ฒฉ ์์ด ์ ์ฒด ๋จ์ด๋ฅผ ์ญ์ ํ๊ณ ์ถ๋ค๋ ๊ฒ์ ์ดํดํ๊ฒ ํ ์ ์์ต๋๋ค.
์ฐ๋ฆฌ์ ์ ์ผํ ์ต์ ์ ์๊ฒฉ ์ ธ์ด ์ดํดํ ์์๋ ๋ฐฉ์์ผ๋ก Ctrl + Backspace ๋ฅผ ํต๊ณผ ํ ์ ์๋์ง ํ์ธํ๋ ๊ฒ์ ๋๋ค.
์ค๋ ๋์ ๋ชจ๋ ์ข์ ์ฌ๋๋ค์๊ฒ ํ๋์ ๋ฉ์์ง๋ฅผ ๋ฐ์์ต๋๋ค.
@ zadjii-msft ๊ทํ์ ์๊ฒฌ ์ด ๋งค์ฐ ๋์์ด๋์์ต๋๋ค. ๋ณธ์ง์ ์ผ๋ก InputStateMachine
\b
๋ฅผ ์ ์ด ๋ฌธ์๋ก ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ์ฌ ํด์ํ๋ ๋ฐ ํ์ํ์ต๋๋ค. ๋ด ์์
๋ธ๋์น์ ๋ค๋ฅธ ๋ ๊ฐ์ง ๋ฌธ์ ์ ๋ํ ์์ ์์ ์ฌํญ๋ ์์ต๋๋ค. ์ธ ๊ฐ์ง ์์ ์ฌํญ์ ๋ชจ๋ ํฌํจํ๋ ํ๋์ PR์ ๋ง๋ค์ด๋ ๋ ๊น์? ์๋๋ฉด ๊ฐ๊ฐ์ ๋ํด ๋ณ๋์ PR์ ์ ํธํฉ๋๊น?
: tada :์ด ๋ฌธ์ ๋ # 3935์์ ํด๊ฒฐ๋์์ผ๋ฉฐ ํ์ฌ Windows Terminal Preview v0.8.10261.0
. : tada :
ํธ๋ฆฌํ ๋งํฌ :
์ด ๋ฌธ์ ๋ ์ฌ์ ํ WSL1 ํฐ๋ฏธ๋์์ ํด๊ฒฐ๋์ง ์์ ๊ฒ ๊ฐ์ต๋๋ค. Ctrl + Backspace ๋์ด ์ค๋ ๋์ ์๋ถ๋ถ์ ์ ๊ณต๋ "bind"๋ช
๋ น์ด ์์ผ๋ฉด ๋ฐ๋๋ผ WSL1 ํฐ๋ฏธ๋์์ ์๋ํ์ง ์์ต๋๋ค.
๋ด๊ฐ ๋ญ๊ฐ ์๋ชปํ๊ณ ์๊ฑฐ๋ ์ฌ์ ํ ๋ชจ๋ ํฐ๋ฏธ๋์์ ์๋ํ์ง ์์ต๋๊น?
@Nufflee bind
๋ช
๋ น์ด ๋ ์ด์ wsl1์์ ๋ฐ๋์ ์๋ํ๋ ๊ฒ์ ์๋๋๋ค. ์ผ๋ถ ์ปดํจํฐ์์๋ ์๋ํ์ง๋ง ๋ค๋ฅธ ์ปดํจํฐ์์๋ ์๋ํ์ง ์์ต๋๋ค. ์ง๊ธ ๋ด ๋ชจ๋ ์ปดํจํฐ์์ ์๋ํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ด๋ ๊ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. stty werase ^H
thx @jevring , ๊ทธ๊ฒ์ ๋ด bash์์ ์๋ํฉ๋๋ค.
๋ชจ๋ฅด๊ฒ ์ด์ ... ctrl + backspace๋ "Windows ํฐ๋ฏธ๋"(๋ฒ ํ)์์ ssh๋ฅผ ํตํด ๋จ์ด๋ฅผ ์ญ์ ํ์ง ์์ต๋๋ค.
์ด ๊ธฐ๋ฅ์ Linux VM์ ํตํด ํฐ๋ฏธ๋ ์ฐฝ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ์๋ํฉ๋๋ค. ์ค์ ๋ก Ctrl + BS๋ ๋ด๊ฐ ์๊ฒฉ ์
ธ์ ์ฌ์ฉํ๋ ๋ก์ปฌ์์๋ Linux ํ๊ฒฝ์ ๋ชจ๋ ์ฐฝ์์ ์๋ํฉ๋๋ค. ๋ฆฌ๋
์ค์์ ์๋นํ ๋ณดํธ์ ์ธ ํค ๋ฐ์ธ๋ฉ์
๋๋ค.
๊ทธ๋ฌ๋ Windows ํฐ๋ฏธ๋์ ๊ฒฝ์ฐ-Ctrl + BS, Shift + BS, Ctrl + Shift + BS, Ctrl + Alt + BS, Alt + BS ๋ฑ-๊ฐ๋ฅํ ๋ชจ๋ ์ฝค๋ณด-๋งํ ์ผ์ด ์๋๋๋ค.
"๋ด๊ฐ ssh ํ ๋-์ง๊ฐ์ ๊ทธ๋ง๋ฌ"๋ผ๊ณ ๋งํ ๋ฐฉ๋ฒ์ด ์์ต๋๊น? ๋๋ ???
์ฌ๋๋ค์ "์ง๊ธ ์๋ํ๋ค"๊ณ ์ธ๊ธํ์ง๋ง ์ ๋ก ์ํฉ์์๋ ์๋ํฉ๋๋ค.
๋ด๊ฐ ๋ฌด์์ ๋์น๊ณ ์์ต๋๊น?
@ lucky-wolf ์ด๋ค ๋ฒ์ ์ SSH ํด๋ผ์ด์ธํธ๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๊น? Windows 7.7๊ณผ ํจ๊ป ์ ๊ณต๋๋ ๋ช ๊ฐ์ง ์ ๋ ฅ ๋ฒ๊ทธ๊ฐ์์ด "Windows Terminal"์์ ํน์ ํค๋ฅผ ๋ณด๋ผ ๋๋ ํน์ ํค๋ฅผ ์ญ์ ํฉ๋๋ค.
์ฐ๋ฆฌ๋ ๊ทธ๋ค์ ํ๊ณผ ํจ๊ป ํด๊ฒฐํ์ผ๋ฉฐ ๋ฒ์ 8.1 ์ด์์ ํฐ๋ฏธ๋์ดํ๋ ๋ชจ๋ ๊ฒ์ ์ง์ํด์ผํฉ๋๋ค.
WSL์ ์ฌ์ฉํ๊ณ ๊ทธ ์์์ SSH๋ฅผ ์คํํ๋ ๊ฒฝ์ฐ _new_ ๋ฒ๊ทธ๋ฅผ ์ ์ถํ๋ฉด ์์์น ๋ชปํ ๋ฐ๋์งํ์ง ์์ ๋์์ด๋ฏ๋ก ๋งค์ฐ ์ ์ฉํฉ๋๋ค.
์ข์, ์ด์ ๋ด ์ปดํจํฐ์ ์์ผ๋ฏ๋ก ์ด๊ฒ์ ์ข ๋ ์ ๋ณด์ฌ์ค ์ ์์ต๋๋ค. Ctrl + Backspace์ ๋ํ ์ธ์ฝ๋ฉ์ ๊ธฐ๋กํ๊ธฐ ์ํด showkey
์ ํธ๋ฆฌํฐ (Ubuntu ๋ฐ Debian์ kbd
ํจํค์ง์ ์ผ๋ถ)๋ฅผ ์ฌ์ฉํ์ต๋๋ค.
% wsl ssh -4 dustin<strong i="10">@antares</strong> -t showkey -a
Press any keys - Ctrl-D will terminate this program
^H 8 0010 0x08
^D 4 0004 0x04
Connection to antares closed.
% ssh -V
OpenSSH_for_Windows_7.7p1, LibreSSL 2.6.5
% ssh dustin<strong i="14">@antares</strong> -t showkey -a
Press any keys - Ctrl-D will terminate this program
^? 127 0177 0x7f
^D 4 0004 0x04
Connection to antares closed.
% ssh8 -V
OpenSSH_for_Windows_8.1p1, LibreSSL 2.6.5
% ssh8 dustin<strong i="19">@antares</strong> -t showkey -a
Press any keys - Ctrl-D will terminate this program
^H 8 0010 0x08
^D 4 0004 0x04
Connection to antares closed.
^H
์ ์ฌ๋ฐ๋ฅธ ์ธ์ฝ๋ฉ์ด๊ณ ^?
๋ ์ฌ๋ฐ๋ฅด์ง ์์ต๋๋ค. Win32-OpenSSH๋ ๋ฒ์ 8 ์ด์์ด ๋ ๋๊น์ง Windows ์ฝ์ ์ธํ๋ผ๋ฅผ ์ ๋ขฐํ์ฌ ์ฌ๋ฐ๋ฅธ ๋ฌธ์ ์ธ์ฝ๋ฉ์ ์์ฑํ์ง ์์์ต๋๋ค. ๊ทธ๊ฒ์ ๊ทธ ์์ฒด๋ก ๊ทธ๋ ๊ฒ ํ ๊ฒ์ด๊ณ
์ฌ๊ณผ. ๋ด๊ฐ ์ฌ๋ฐ๋ฅธ ์์น์ ์๋์ง 100 % ํ์ ํ์ง ๋ชปํฉ๋๊น? ์ ๋ Win 10์์ "Windows Terminal"์ฑ 1.1.2021.0์ ์คํํ๊ณ ์์ต๋๋ค.
๋๋ ๊ด์ฐฎ์ ์ ธ์ ์ฐพ์ผ๋ ค๊ณ ํ ๋ ๊ทธ๊ฒ์ ์ค์นํ๊ณ PS์ WSL์ ์ฒ๋ฆฌ ํ ์์๋ ๋ฌด์ธ๊ฐ๋ฅผ ์ํ์ต๋๋ค (๋น์ ์ค์นํ์ต๋๋ค). ๊ทธ ์ดํ๋ก ๋ฒ๊ฑฐ๋ก์ด WSL์ ์ ๊ฑฐํ์ง๋ง์ด Windows ํฐ๋ฏธ๋์ ๊ฒฌ๊ณ ํ ์๊ฒฉ ์ ธ ์ธํฐํ์ด์ค๋ก ์ฌ์ฉํ๋ ค๊ณ ํ์ต๋๋ค. ssh๋ฅผ ํตํด ์ง์ฅ์์ ์ฌ์ฉํ๋ ๋ค์ํ Linux ์์์ ๋ํ bash / zsh ์์ ์ง์ ์ ์ง์ํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ์ ๋ ๋งค์ฐ ๋ง์กฑํ์ต๋๋ค. ๋จ ํ ๊ฐ์ง ์์ธ๋ ctrl + backspace๋ ๋จ์ด๋ฅผ ์ญ์ ํ์ง ์์ต๋๋ค. ์ข์ ๊ฐ์ ์ ๋ Windows ํฐ๋ฏธ๋์์ ๊ฐ๋จํ ๊ฒ์์ํ๊ณ Ctrl + BS๊ฐ ์๋ํ์ง ์์๊ณ ๋ง์ ์ฌ๋๋ค์ด ํ๋ฅญํ๊ฒ ์๋ํ๋ค๊ณ ์ฌ๊ธฐ์ ์์ต๋๋ค.
๊ทธ๋์, ๊ฑฐ๊ธฐ์ ๋ค๋ฅธ ์๋์ฐ ํฐ๋ฏธ๋์ด ์์ต๋๊น? Windows ํฐ๋ฏธ๋์ ์๋ชป ์ฌ์ฉํ๊ณ ์์ต๋๊น (Power Shell 5.1.18362.752์์ ์์ํ ๋ค์ ๊ฑฐ๊ธฐ์์ ssh๋ฅผ ์คํ ์ค์ ๋๋ค ... ์์ํ๊ธฐ์ ๋ ๋์ ๊ธฐ๋ณธ ์์ด์์ ์ ์์ต๋๊น?)
ํจ์ฌ ์ต์ ๋ฒ์ ์ PS๊ฐ ์์์ ํ์ธ ํ์ผ๋ฏ๋ก ์ง๊ธ 7.03์ผ๋ก ์
๊ทธ๋ ์ด๋ํ๊ฒ ์ต๋๋ค. ๋ ์ ์๋ํ๋ฉด WSL์ ๋ค์ ์ค์นํ ์ ์์ต๋๊น?
๋๋ ์ด๋ค ๋ก์ปฌ ์์
์ ๋ํด์๋ PS์๋ณ๋ก ๊ด์ฌ์ด ์๋ค-๋น๋ก ์๋ก์ด ์
ธ์ ๋ํด ์กฐ๊ธ์ด๋ผ๋ ๋ฐฐ์ฐ๋ ๊ฒ์ ๊ด์ฐฎ์ง ๋ง-๋ด๊ฐ ํ์๋กํ๋ ๊ฒ์ 98 %๋ ๊ธฐ๋ณธ ์ค์ ์ํ๊ธฐ ์ํด ๋ค์ํ ๋ฆฌ๋
์ค ๋ฐ์ค์ ssh ํ ์์๋ ์์ ์ ์ด๊ณ ์ ์ฐํ ํฐ๋ฏธ๋์ด๋ค. ๋ก๊ทธ ์์ง / ๋ฌธ์ ํด๊ฒฐ-
๊ทธ๋ฆฌ๊ณ ctrl + backspace๊ฐ ์์ผ๋ฉด ์ ๋ ฅ์ด ํ์ํ ๊ฒ๋ณด๋ค ํจ์ฌ ๋ ์ด๋ ค์์ง๋๋ค (๋๋จธ์ง ํฐ๋ฏธ๋ ๊ฒฝํ์ด ๋งค์ฐ ์ฐ์ ํ ๋).
๊ทธ๋ฆฌ๊ณ ํ ... ์-๋๋ ๋ฌ๋ฆฌ๊ณ ์์ต๋๋ค.
ssh -v
OpenSSH_for_Windows_7.7p1, LibreSSL 2.6.5
๋ฌธ์ ์ ๋ค๋ฅธ ์ ๋ฐ์ฒ๋ผ ๋ณด์ ๋๋ค!
๊ทธ๋ฐ ๋ฉ์ฒญ์ด๋ก ๋ฏธ์ํด. ์ด๊ฒ์ ๋ด๊ฐ ํ์ํ ๋์, @DHowett ์ฒ๋ผ ๋ณด์ ๋๋ค! ๋งค์ฐ ๊ฐ์ฌ!
์ต์ ์ ๋ณด:
Power Shell 7.03์ผ๋ก ์
๋ฐ์ดํธํ์ต๋๋ค.
OpenSSH_for_Windows_8.1p1, LibreSSL 2.9.2๋ก ์
๋ฐ์ดํธ๋์์ต๋๋ค.
ํ์ง๋ง ssh8์ ๋ด ๋ฆฌ๋
์ค ๋ฐ์ค์ ๋ฃ์ผ๋ฉด ctrl + bs๋ ๋จ์ด ์ญ์ ๋ฅผํ์ง ์์ต๋๋ค.
Mint VM์์ ๋ค์ดํฐ๋ธ ํฐ๋ฏธ๋ ๋ฐ ssh ๊ตฌํ์ ์ฌ์ฉํ์ฌ ๋๊ฐ์ ์์ ์ ์ํํ๋ฉด ctrl + bs๊ฐ ์๋ํฉ๋๋ค.
๊ทธ๋์ ๋๋ ์ด๊ฒ์ ๋ฌ์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์ฌ์ ํ ์์ด๋ฒ๋ฆฐ ๊ฒ ๊ฐ์์? : /
ssh ์ฐ๊ฒฐ์ ์ฐ ํ ๋ค์ ๋ช ๋ น์ ์คํํ์ฌ Ctrl + Backspace๊ฐ Linux VM์์ ์๋ํ๋๋กํด์ผํ์ต๋๋ค.
stty werase ^h
์ต์ Windows Terminal Preview ๋ฐ OpenSSH 8.1์ ์ฌ์ฉํ๊ณ ์์ต๋๋ค. BTW๊ฐ bash
์์์ ์๋ํ๋ ๋์ ์๊ฒฉ์์ Ctrl+Backspace
pwsh
์ ์์ํ๋ฉด Ctrl+Backspace
๋ ๋จ์ผ ๋ฌธ์๋ฅผ ์ญ์ ํ๋ ๊ฒ์ผ๋ก ๋์๊ฐ๋๋ค. PowerShell์์ stty
๋ช
๋ น์ ์๋ํ์ง๋ง ๊ธฐ์จ์ด ์์์ต๋๋ค.
@ DHowett-MSFT
์ด๊ฒ ์ ๋ซํ ์์ต๋๊น? ์ ์ด๋ bash์์๋ ์ฌ์ ํ ๋ฐ์ํฉ๋๋ค. powershell๊ณผ cmd์์๋ ์ ์๋ํฉ๋๋ค.
WSL ๊ธฐ๋ฐ ํฐ๋ฏธ๋์ Ctrl + Backspace๋ก ์ ์ฒด ๋จ์ด๋ฅผ ์ญ์ ํ์ง ์์ต๋๋ค.
WSL์ ์ด๋ค ์ด์ ๋ก ๋ (WSL2์ ๋ํด ํ์คํ์ง ์์) Ctrl + Backspace ๊ฐ์ ํค ์ํ์ค๋ฅผ "์ ์ฒด ๋จ์ด ์ญ์ "๋ก ํด์ํ์ง ์์ต๋๋ค. ์ด์ WSL ๊ธฐ๋ฐ ํฐ๋ฏธ๋ (์ : MS ์คํ ์ด์ Ubuntu ์ ธ)์ ์ฌ๋ ๊ฒฝ์ฐ Ctrl + Backspace ๋ ์ด๋ฌํ ์ด์ ๋ก ์ ์ฒด ๋จ์ด๋ฅผ ์ญ์ ํ์ง ์์ต๋๋ค. WSL ๊ธฐ๋ฐ ํฐ๋ฏธ๋์์ ์ ์ฒด ๋จ์ด๋ฅผ ์ญ์ ํ๋ ค๋ฉด Ctrl + W ๋ฅผ ์ฌ์ฉํ๋ฉด๋ฉ๋๋ค. Ctrl + Backspace ๋ ์์๋๋ก ๊ฐ์ ํค ์ํ์ค๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ๋๋ฌธ์ CMD ๋ฐ PS์์ ์๋ํฉ๋๋ค.
(์ค๋ ๋ ์ฝ๊ธฐ / PR, ๋ชจ๋ ์์ต๋๋ค)
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
PSReadLine ์์ :
Set-PSReadLineKeyHandler -Key Ctrl+h -Function BackwardKillWord