๊ทธ๊ฒ์ ์ ์๊ตฌ์ฐ
์คํ ํซํค 1.1 ๊น์์ F10 ๋๋ฅด๋ฉด ํ์ฌ ํด๋ ๊ธฐ์ค์ผ๋ก code . <- ๊น์ง ์๋์ผ๋ก ํด์ฃผ๋ ์คํฌ๋ฆฝํธ.
์๊ฐํด๋ณด๋ ์ด๊ฑธ ์ ์๋ง๋ค์๋ ์ถ๋๋ผ๊ณ .
์ผ๋จ '๋๋' ์ ๋๋๊น ๊ณต์ ํด๋ด.ย
์ผ๋จ vscode ์ฒซ ์ค์นํ ๋ ๊ฑด๋๋ฆฌ์ง ์์ผ๋ฉด PATH ํ๊ฒฝ๋ณ์์ code๊ฐ ์๋์ผ๋ก ๋ฑ๋ก๋๊ฒ ๋์๋๋ฐ ๊ทธ๋ ๊ฒ ๋์์ผ๋ฉด ์ฌ์ฉ ๊ฐ๋ฅํ ๋ฏ ํจ
+ ์๋๋ผ์ด๋ธ ๋๋ฌธ์ ๊ฒฝ๋ก ๋ฐ๋๊ฑฐ๋ ํ๋ ๋ฑ ์ข ๋ช๊ฐ์ง ๊ดด๋ํ ์์ธ๊ฐ ์๋๋ฐ ๊ทธ๋ผ ์์์ ์์ ํด์ ์ฌ์ฉ ํ๋ ๊ฒ์ผ๋ก.
ํน์ ํด๋ ( ์๋์ฐ ํ์๊ธฐ ) ์์ ctrl + l ๋๋ฅด๋ฉด ์ฃผ์์ฐฝ์ด ํ์ด๋ผ์ดํธ ๋๊ณ ๊ฑฐ๊ธฐ์ ๋ณดํต cmd ์น๊ณ ์ฝ์ ์ด๊ณ
code .
( ํ๊ฒฝ๋ณ์์ ๋ฑ๋ก๋ code ์คํ - vscode ์คํ + ์คํ ํ ๋ ์ธ์๋ '.' ์ ๋ฃ์ด์ ์คํํด๋ผ. '.' ์ ํ์ฌ ํด๋๋ฅผ ์๋ฏธ )
์ด๋ฐ ์์ผ๋ก ์คํํ๋๋ฐ ๋๋ฌด ๋ง์ด ์ฌ์ฉํ๋ค๋ณด๋ ์ด๊ฑธ ์คํฌ๋ฆฝํ ํ ์๊ฐ ์ํ๋ค ๋ฐฉ๊ธ ์๊ฐ๋์ ๋ง๋ฌ
์๋๋ด์ฉ ๊ผญ utf-8 (BOM)์ผ๋ก ์ ์ฅํด์ ์ฌ์ฉํ๋ฉด ๋๊ณ , userName์ ํ์ฌ '์ฌ์ฉ์๋ช ' ์ ์ด๋๋ฉด ๋จ
; =============================================================================
; ์คํฌ๋ฆฝํธ ์ ๋ณด & ์ฃผ์์ฌํญ (2026๋ ๊ธฐ์ค)
; =============================================================================
; AutoHotkey ๋ฒ์ ย ย ย : v1.1.x (v2 ํธํ ์ ๋จ - v2 ๋ฌธ๋ฒ ์ฌ์ฉ ๊ธ์ง)
; ์ฃผ์ ํธํ์ฑย ย ย ย ย : Windows 10 / Windows 11 (ํญ ๊ธฐ๋ฅ ํฌํจ)
; ํ ์คํธ ํ๊ฒฝย ย ย ย ย : Windows 11 23H2 ~ 24H2 ๋น๋ ๊ธฐ์ค์ผ๋ก ๊ฒ์ฆ๋จ
; ๊ฒฝ๋ก ๊ฐ์ ธ์ค๊ธฐ ๋ฐฉ์ย : ์ฃผ์์ฐฝ ํฌ์ปค์ค(Alt+D) + Ctrl+C ํด๋ฆฝ๋ณด๋ ๋ณต์ฌ
;ย ย ย ย ย ย ย ย ย ย ย ย โ Windows 11 ํญ/OneDrive/ํน์ ํด๋์์๋ ๋น๊ต์ ์์ ์
; ์ฃผ์ & ์์ธ ์ํฉ
; 0. UTF-8 (BOM) ์ผ๋ก ํ์ผ์ด ์ ์ฅ๋์ด์ผ๋ง ๋ฌธ์ ์์ด ๋ฑ๋ก ๋จ
; 1. ๋น ๋ฅธ ์ก์ธ์ค / This PC / ๊ฒ์ ๊ฒฐ๊ณผ / ๋คํธ์ํฌ ๋๋ผ์ด๋ธ / ๋ผ์ด๋ธ๋ฌ๋ฆฌ
;ย ย โ ๊ฒฝ๋ก ๋ณต์ฌ๊ฐ ์ ๋๊ฑฐ๋ ์๋ชป๋ ๊ฐ์ด ๋์ฌ ์ ์์
; 2. OneDrive ๋๊ธฐํ ํด๋ (ํนํ ํด๋ผ์ฐ๋ ์ ์ฉ ํ์ผ)
;ย ย โ ๊ฒฝ๋ก๊ฐ "OneDrive - ํ์ฌ๋ช " ํํ๋ก ๋์ FileExist() ์คํจ ๊ฐ๋ฅ
; 3. ์ฃผ์์ฐฝ์ "๊ฒ์ ์ค..." ๋๋ "์์ ์ค..." ์ํ
;ย ย โ ClipWait ํ์์์ ๋๋ ์๋ชป๋ ๋ฌธ์์ด ๋ณต์ฌ๋ ์ ์์
; 4. ๋ค์ค ๋ชจ๋ํฐ + Explorer ์ฐฝ์ด ๋นํ์ฑ ์ํ์์ F10 ๋๋ฆ
;ย ย โ SendInput์ด ์ ๋๋ก ์ ๋จนํ ์ ์์ (WinActive ์ฒดํฌ๋ก ๋ฐฉ์ด)
; 5. UAC(๊ด๋ฆฌ์ ๊ถํ) ์ฐฝ์ด๋ ๋ณด์ ์ํํธ์จ์ด ์ฐจ๋จ
;ย ย โ SendInput ๋ธ๋ก โ Sleep ์๊ฐ ๋๋ฆฌ๊ฑฐ๋ #InputLevel ์กฐ์ ๊ณ ๋ ค
; 6. ํด๋ฆฝ๋ณด๋ ํ์คํ ๋ฆฌ(Win+V) ํ์ฑํ ์ ๊ฐํ์ ๊ฐ์ญ ๊ฐ๋ฅ
; 7. Sleep 200ms โ ๋๋ฆฐ PC์์๋ 300~500ms๋ก ๋๋ ค์ผ ์์ ์ ์ผ ์ ์์
; ๋๋ฒ๊น ํ
; - showDebugMsg := true ๋ก ์ค์ ํ๋ฉด ์ฑ๊ณต ์์๋ ๋ฉ์์ง๋ฐ์ค ํ์ธ ๊ฐ๋ฅ
; - ๊ฒฝ๋ก๊ฐ ์ด์ํ๋ฉด ์๋์ผ๋ก Explorer โ Alt+D โ Ctrl+C โ Win+V ๋๋ฌ์
;ย ย ํด๋ฆฝ๋ณด๋์ ์ค์ ๋ก ๋ญ๊ฐ ๋ณต์ฌ๋๋์ง ํ์ธํ์ธ์
; =============================================================================
#NoEnv
#SingleInstance Force
SendMode Input
SetWorkingDir %A_ScriptDir%
; === ์ค์ ๋ถ๋ถ (์ฌ๊ธฐ๋ง ์์ ํ๋ฉด ๋จ) ===
userName := ""ย ย ; โ ๋ณธ์ธ Windows ์ ์ ๋ช ์ผ๋ก ๋ฐ๊พธ์ธ์
; ๋๋ ์๋์ผ๋ก ํ์ฌ ๋ก๊ทธ์ธ ์ ์ ๋ช ์ฌ์ฉํ๋ ค๋ฉด ์๋ ์ฃผ์ ํ๊ธฐ
; userName := A_UserName
; VS Code ์คํ ํ์ผ ๊ฒฝ๋ก (userName ๋ณ์ ์ฌ์ฉ)
vscodeExe := "C:\Users\" . userName . "\AppData\Local\Programs\Microsoft VS Code\Code.exe"
; ๋๋ฒ๊ทธ ๋ฉ์์ง๋ฐ์ค ๋์ธ์ง ์ฌ๋ถ (true๋ก ๋ฐ๊พธ๋ฉด ์ฑ๊ณตํ ๋๋ ๋ฉ์์ง ๋์ด)
showDebugMsg := false
GetActiveExplorerPath() {
ย ย originalClipboard := ClipboardAll
ย ย Clipboard := ""
ย ย SendInput !d
ย ย Sleep 200
ย ย SendInput ^c
ย ย ClipWait 1
ย ย path := Clipboard
ย ย Clipboard := originalClipboard
ย ย if (path != "") {
ย ย ย ย path := RegExReplace(path, "^(์ฃผ์:|Address:|๊ฒ์:|Search:)\s*", "")
ย ย ย ย path := Trim(path)
ย ย }
ย ย return path
}
#IfWinActive ahk_class CabinetWClass
F10::
ย ย path := GetActiveExplorerPath()
ย ย ; ์ฑ๊ณต ์ผ์ด์ค โ ๊ธฐ๋ณธ์ ์ผ๋ก ์กฐ์ฉํ ์ฒ๋ฆฌ
ย ย if (path != "" && FileExist(path) && InStr(FileExist(path), "D")) {
ย ย ย ย if FileExist(vscodeExe) {
ย ย ย ย ย ย Run, "%vscodeExe%" "%path%", , UseErrorLevel
ย ย ย ย ย ย if (ErrorLevel != 0) {
ย ย ย ย ย ย ย ย ; ์คํ ์คํจ ์์๋ง MsgBox
ย ย ย ย ย ย ย ย MsgBox, 16, VS Code ์คํ ์คํจ,ย
(
๊ฒฝ๋ก๋ ๊ฐ์ ธ์์ผ๋ VS Code๋ฅผ ์ด์ง ๋ชปํ์ต๋๋ค.
ErrorLevel: %ErrorLevel%
๊ฒฝ๋ก: %path%
์ง์ ํ์ธํด๋ณด์ธ์.
)
ย ย ย ย ย ย } else if (showDebugMsg) {
ย ย ย ย ย ย ย ย MsgBox, 64, ์ฑ๊ณต (๋๋ฒ๊ทธ),ย
(
๊ฒฝ๋ก: %path%
VS Code ์คํ ์๋ฃ
)
ย ย ย ย ย ย }
ย ย ย ย } else {
ย ย ย ย ย ย ; Code.exe ๋ชป ์ฐพ์ โ ํญ์ ์๋ฌ MsgBox
ย ย ย ย ย ย MsgBox, 16, VS Code ์คํ ํ์ผ ์์,ย
(
Code.exe๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
๊ฒฝ๋ก ํ์ธ: %vscodeExe%
์คํฌ๋ฆฝํธ ์๋จ์ userName ๋ณ์๋ฅผ ๋ณธ์ธ Windows ์ ์ ๋ช ์ผ๋ก ์์ ํด์ฃผ์ธ์.
๋๋ VS Code ์ค์น ์์น๊ฐ ๋ค๋ฅผ ์ ์์ผ๋ ํ์ธ ๋ถํ๋๋ ค์.
)
ย ย ย ย }
ย ย } else {
ย ย ย ย ; ๊ฒฝ๋ก ๊ฐ์ ธ์ค๊ธฐ ์คํจ โ ํญ์ MsgBox
ย ย ย ย MsgBox, 16, ๊ฒฝ๋ก ๊ฐ์ ธ์ค๊ธฐ ์คํจ,ย
(
ํ์ฌ ํด๋ ๊ฒฝ๋ก๋ฅผ ๊ฐ์ ธ์ค์ง ๋ชปํ์ต๋๋ค.
ํ์ธ์ฌํญ:
- ์ฃผ์์ฐฝ์ ํฌ์ปค์ค๊ฐ ์ ๋๋ก ๊ฐ๋์ง (Alt+D โ Ctrl+C)
- ์ผ๋ฐ ๋ก์ปฌ ํด๋(C:\Temp ๋ฑ)์์ ์๋ํ๋์ง
- ํด๋ฆฝ๋ณด๋์ ๋ณต์ฌ๋ ๋ด์ฉ์ด ์ค์ ๊ฒฝ๋ก์ธ์ง
ํด๋ฆฝ๋ณด๋ ๋ด์ฉ: %path%
)
ย ย }
return
#IfWinActive
๋๊ธ 0